רצף של אלמנט אחד בודד
בונים ציבוריים
SingleElementSequence ( AbstractNdArray <T, U> ndArray) |
שיטות ציבוריות
NdArraySequence <U> | asSlices () מחזיר כל רכיב כפרוסה חדשה. |
בָּטֵל | forEachIndexed (BiConsumer<long[], U> צרכן) |
איטרטור<U> | איטרטור () |
שיטות בירושה
בוליאני | שווה (Object arg0) |
כיתה אחרונה<?> | getClass () |
int | hashcode () |
ריק סופי | להודיע () |
ריק סופי | הודע הכל () |
חוּט | toString () |
ריק סופי | המתן (ארג0 ארוך, int arg1) |
ריק סופי | חכה (ארג0 ארוך) |
ריק סופי | חכה () |
abstract NdArraySequence <U מרחיב את NdArray <T>> | asSlices () מחזיר כל רכיב כפרוסה חדשה. |
ריק מופשט | forEachIndexed (BiConsumer<long[], U מרחיב את NdArray <T>> לצרכן) בקר בכל רכיב של איטרציה זו ובקואורדינטות שלהם. |
ריק מופשט | forEach (Consumer<? super T> arg0) |
Abstract Iterator<U מרחיב את NdArray <T>> | איטרטור () |
abstract Spliterator<U מרחיב את NdArray <T>> | מפצל () |
בונים ציבוריים
שיטות ציבוריות
public NdArraySequence <U> asSlices ()
מחזיר כל רכיב כפרוסה חדשה.
שלא כמו אוספי Java קונבנציונליים, אלמנטים של NdArraySequence
הם ארעיים, כלומר מופעי NdArray
חדשים מוקצים לכל איטרציה. כדי לשפר את הביצועים, ניתן למחזר את אותו מופע כדי להציג את כל הרכיבים ברצף זה, באמצעות DataBufferWindow
.
עם זאת, במקרים מסוימים, ייתכן שעדיף להשבית אופטימיזציות כאלה כדי להבטיח שכל רכיב שמוחזר הוא חלק חדש מהמערך המקורי. לדוגמה, אם רכיב אחד או יותר שביקר בו חייבים לחיות מעבר להיקף איטרציית הרצף, asSlices()
מוודא שכל האלמנטים המוחזרים על ידי הרצף הם מופעים ייחודיים.
final List<IntNdArray> vectors = new ArrayList<>();
IntNdArray matrix = NdArrays.ofInts(Shape.of(6, 6));
ndArray.elements(0).forEach(e -> vectors::add); // Not safe, as `e` might always be the same recycled instance
ndArray.elements(0).asSlices().forEach(e -> vectors::add); // Safe, each `e` is a distinct NdArray instance
מחזיר
- רצף שמחזיר כל רכיב חוזר כפרוסה חדשה