تسلسل يقوم بإنشاء مثيل NdArray
جديد (شريحة) لكل عنصر من عناصر التكرار
المقاولون العامون
SlicingElementSequence ( AbstractNdArray <T, U> ndArray, int DimensionIdx) | |
SlicingElementSequence ( AbstractNdArray <T, U> ndArray, int DimensionIdx, DimensionalSpace elementDimensions) |
الأساليب العامة
ندأرايسكوينس <U> | كشرائح () إرجاع كل عنصر كشريحة جديدة. |
فارغ | forEachIndexed (BiConsumer<long[], U> المستهلك) |
التكرار<U> | مكرر () |
الطرق الموروثة
المقاولون العامون
SlicingElementSequence العامة ( AbstractNdArray <T, U> ndArray, int DimensionIdx, DimensionalSpace elementDimensions)
الأساليب العامة
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
المرتجعات
- تسلسل يُرجع كل عنصر تم تكراره كشريحة جديدة