NdArraySequence

رابط عمومی NdArraySequence
زیر کلاس های غیر مستقیم شناخته شده

دنباله ای از عناصر یک آرایه N بعدی.

یک NdArraySequence برای عبور از یک NdArray در یک بعد معین و بازدید از هر یک از عناصر آن استفاده می شود. برای مثال، با توجه به یک ماتریس 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

روش های عمومی

انتزاع NdArraySequence <T>
اسلایس ()
هر عنصر را به عنوان یک برش جدید برمی گرداند.
خلأ انتزاعی
forEachIndexed (BiConsumer<long[], T> مصرف کننده)
از هر یک از عناصر این تکرار و مختصات مربوط به آنها دیدن کنید.

روش های ارثی

روش های عمومی

انتزاع عمومی NdArraySequence <T> asSlices ()

هر عنصر را به عنوان یک برش جدید برمی گرداند.

برخلاف مجموعه‌های معمولی جاوا، عناصر 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
 

برمی گرداند
  • دنباله ای که هر عنصر تکرار شده را به عنوان یک برش جدید برمی گرداند
همچنین ببینید

خلأ انتزاعی عمومی برای هر ایندکس شده (BiConsumer<long[]، T> مصرف کننده)

از هر یک از عناصر این تکرار و مختصات مربوط به آنها دیدن کنید.

مهم: روش مصرف کننده نباید به مختصات اشاره کند زیرا ممکن است تغییرپذیر باشند و در طول تکرار برای بهبود عملکرد دوباره مورد استفاده قرار گیرند.

پارامترها
مصرف کننده روش فراخوانی برای هر عنصر