LongNdArray

ממשק ציבורי LongNdArray
תת-מחלקות עקיפות ידועות

NdArray של לונגים.

שיטות ציבוריות

תקציר LongNdArray
copyTo ( NdArray <Long> dst)
abstract NdArraySequence < LongNdArray >
אלמנטים (int dimensionIdx)
מחזירה רצף של כל האלמנטים בממד נתון.
תקציר LongNdArray
לקבל (ארוכות... קואורדינטות)
מחזירה את האלמנט N-ממדי של מערך זה בקואורדינטות הנתונות.
מופשט ארוך
getLong (ארוכות... קואורדינטות)
מחזירה את הערך הארוך של הסקלר שנמצא בקואורדינטות הנתונות.
מופשט ארוך
getObject (ארוכות... קואורדינטות)
מחזירה את הערך של הסקלר שנמצא בקואורדינטות הנתונות.
תקציר LongNdArray
read ( DataBuffer <Long> dst)
תקציר LongNdArray
abstract NdArraySequence < LongNdArray >
סקלרים ()
מחזירה רצף של כל הסקלרים במערך זה.
תקציר LongNdArray
set ( NdArray <Long> src, long... coordinates)
תקציר LongNdArray
setLong (ערך ארוך, ארוך... קואורדינטות)
מקצה את הערך הארוך של הסקלר שנמצא בקואורדינטות הנתונות.
תקציר LongNdArray
setObject (ערך ארוך, ארוכות... קואורדינטות)
תקציר LongNdArray
פרוסה ( אינדקס... מדדים)
יוצר תצוגה רב-ממדית (או פרוסה) של מערך זה על ידי מיפוי מימד אחד או יותר לבוררי האינדקס הנתונים.
תקציר LongNdArray
תקציר LongNdArray
כתוב ( DataBuffer <Long> src)

שיטות בירושה

שיטות ציבוריות

תקציר ציבורי LongNdArray copyTo ( NdArray <Long> dst)

תקציר ציבורי NdArraySequence < LongNdArray > אלמנטים (int dimensionIdx)

מחזירה רצף של כל האלמנטים בממד נתון.

באופן הגיוני, ניתן לשטח את המערך N-ממדי בוקטור יחיד, כאשר הסקלרים של האלמנט (n - 1) קודמים לאלו של האלמנט (n) ה-th, עבור סך ערכי size() .

לדוגמה, בהינתן מטריצת nxm על צירי [x, y] , אלמנטים חוזרים בסדר הבא:

x 0 y 0 , x 0 y 1 , ..., x 0 y m-1 , x 1 y 0 , x 1 y 1 , ..., x n-1 y m-1

לאחר מכן ניתן לחזור על הרצף המוחזר כדי לבקר בכל רכיב, על ידי קריאה forEach(Consumer) או forEachIndexed(BiConsumer) .

// Iterate matrix for initializing each of its vectors
    matrixOfFloats.elements(0).forEach(v -> {
      v.set(vector(1.0f, 2.0f, 3.0f));
    );

    // Iterate a vector for reading each of its scalar
    vectorOfFloats.scalars().forEachIdx((coords, s) -> {
      System.out.println("Value " + s.getFloat() + " found at " + coords);
    });
 }

פרמטרים
dimensionIdx אינדקס של הממד
מחזיר
  • רצף NdArray

תקציר ציבורי LongNdArray get (ארוכות... קואורדינטות)

מחזירה את האלמנט N-ממדי של מערך זה בקואורדינטות הנתונות.

ניתן לאחזר אלמנטים מכל אחד מהממדים של מערך זה. לדוגמה, אם מספר הקואורדינטות שווה למספר הממדים של מערך זה, מוחזר מערך rank-0 (סקלארי), אשר לאחר מכן ניתן לקבל את הערך על ידי קריאת `array.getObject()`.

כל שינוי שהוחל על הרכיבים המוחזרים משפיע גם על הנתונים של מערך זה, מכיוון שאין עותק מעורב.

שים לב שהפעלת שיטה זו היא דרך מקבילה ויעילה יותר לפרוס מערך זה על סקלר בודד, כלומר array.get(x, y, z) שווה ל- array.slice(at(x), at(y), at(z))

פרמטרים
קואורדינטות קואורדינטות של האלמנט לגישה, אף אחת לא תחזיר את המערך הזה
מחזיר
  • האלמנט באינדקס הזה

תקציר ציבורי ארוך getLong (ארוכות... קואורדינטות)

מחזירה את הערך הארוך של הסקלר שנמצא בקואורדינטות הנתונות.

כדי לגשת לאלמנט הסקלרי, מספר הקואורדינטות שסופק חייב להיות שווה למספר הממדים של מערך זה (כלומר הדירוג שלו). לְדוּגמָה:

LongNdArray matrix = NdArrays.ofLongs(shape(2, 2));  // matrix rank = 2
  matrix.getLong(0, 1);  // succeeds, returns 0L
  matrix.getLong(0);  // throws IllegalRankException

  LongNdArray scalar = matrix.get(0, 1);  // scalar rank = 0
  scalar.getLong();  // succeeds, returns 0L
 

פרמטרים
קואורדינטות קואורדינטות של הסקלר לפתרון
מחזיר
  • הערך של הסקלר הזה
זורק
IndexOutOfBoundsException אם חלק מהקואורדינטות נמצאות מחוץ לגבולות המימד שלהן
חריג דירוג בלתי חוקי אם מספר הקואורדינטות אינו מספיק כדי לגשת לאלמנט סקלרי

תקציר ציבורי Long getObject (ארוכות... קואורדינטות)

מחזירה את הערך של הסקלר שנמצא בקואורדינטות הנתונות.

כדי לגשת לאלמנט הסקלרי, מספר הקואורדינטות שסופק חייב להיות שווה למספר הממדים של מערך זה (כלומר הדירוג שלו). לְדוּגמָה:

FloatNdArray matrix = NdArrays.ofFloats(shape(2, 2));  // matrix rank = 2
  matrix.getObject(0, 1);  // succeeds, returns 0.0f
  matrix.getObject(0);  // throws IllegalRankException

  FloatNdArray scalar = matrix.get(0, 1);  // scalar rank = 0
  scalar.getObject();  // succeeds, returns 0.0f
 
הערה: אם מערך זה מאחסן ערכים מסוג פרימיטיבי, העדיפו את השימוש בשיטה המיוחדת בתת המחלקה עבור סוג זה. לדוגמה, floatArray.getFloat(0); .

פרמטרים
קואורדינטות קואורדינטות של הסקלר לפתרון
מחזיר
  • הערך של הסקלר הזה

תקציר ציבורי LongNdArray read ( DataBuffer <Long> dst)

תקציר ציבורי LongNdArray read ( LongDataBuffer dst)

תקציר ציבורי NdArraySequence < LongNdArray > סקלרים ()

מחזירה רצף של כל הסקלרים במערך זה.

זה שווה ערך ל-call elements(shape().numDimensions() - 1)

מחזיר
  • רצף NdArray

תקציר ציבורי LongNdArray סט ( NdArray <Long> src, long... coordinates)

תקציר ציבורי LongNdArray setLong (ערך ארוך, קואורדינטות ארוכות)

מקצה את הערך הארוך של הסקלר שנמצא בקואורדינטות הנתונות.

כדי לגשת לאלמנט הסקלרי, מספר הקואורדינטות שסופק חייב להיות שווה למספר הממדים של מערך זה (כלומר הדירוג שלו). לְדוּגמָה:

LongNdArray matrix = NdArrays.ofLongs(shape(2, 2));  // matrix rank = 2
  matrix.setLong(10L, 0, 1);  // succeeds
  matrix.setLong(10L, 0);  // throws IllegalRankException

  LongNdArray scalar = matrix.get(0, 1);  // scalar rank = 0
  scalar.setLong(10L);  // succeeds
 

פרמטרים
עֵרֶך ערך להקצות
קואורדינטות קואורדינטות של הסקלר להקצאה
מחזיר
  • המערך הזה
זורק
IndexOutOfBoundsException אם חלק מהקואורדינטות נמצאות מחוץ לגבולות המימד שלהן
חריג דירוג בלתי חוקי אם מספר הקואורדינטות אינו מספיק כדי לגשת לאלמנט סקלרי

תקציר ציבורי LongNdArray setObject (ערך ארוך, קואורדינטות ארוכות)

תקציר ציבורי פרוסת LongNdArray ( אינדקס... אינדקסים)

יוצר תצוגה רב-ממדית (או פרוסה) של מערך זה על ידי מיפוי מימד אחד או יותר לבוררי האינדקס הנתונים.

פרוסות מאפשרות לחצות מערך N-ממדי בכל אחד מהצירים שלו ו/או לסנן רק אלמנטים בעלי עניין. לדוגמה, עבור מטריצה ​​נתונה בצירי [x, y] , ניתן לבצע איטרציה של אלמנטים ב- y=0 עבור כל x .

כל שינוי שהוחל על הפרוסה המוחזרת משפיע גם על הנתונים של מערך זה, מכיוון שאין עותק מעורב.

דוגמה לשימוש:

FloatNdArray matrix3d = NdArrays.ofFloats(shape(3, 2, 4));  // with [x, y, z] axes

    // Iterates elements on the x axis by preserving only the 3rd value on the z axis,
    // (i.e. [x, y, 2])
    matrix3d.slice(all(), all(), at(2)).elements(0).forEach(m -> {
      assertEquals(shape(2), m); // y=2, z=0 (scalar)
    );

    // Creates a slice that contains only the last element of the y axis and elements with an
    // odd `z` coordinate.
    FloatNdArray slice = matrix3d.slice(all(), at(1), odd());
    assertEquals(shape(3, 2), slice.shape());  // x=3, y=0 (scalar), z=2 (odd coordinates)

    // Iterates backward the elements on the x axis
    matrix3d.slice(flip()).elements(0).forEach(m -> {
      assertEquals(shape(2, 4), m);  // y=2, z=4
    });
 }

פרמטרים
מדדים בוררי אינדקס לכל ממדים, החל מממד 0 של מערך זה.
מחזיר
  • האלמנט הנובע מבחירת האינדקס

תקציר ציבורי LongNdArray כתיבה ( LongDataBuffer src)

תקציר ציבורי LongNdArray כתיבה ( DataBuffer <Long> src)