BooleanNdArray

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

NdArray از بولی ها.

روش های عمومی

انتزاعی BooleanNdArray
copyTo ( NdArray <Boolean> dst)
Abstract NdArraySequence < BooleanNdArray >
عناصر (int dimensionIdx)
دنباله ای از همه عناصر را در یک بعد معین برمی گرداند.
انتزاعی BooleanNdArray
دریافت (طولانی... مختصات)
عنصر N بعدی این آرایه را در مختصات داده شده برمی گرداند.
بولی انتزاعی
getBoolean (مختصات طولانی...)
مقدار بولی اسکالر موجود در مختصات داده شده را برمی گرداند.
بولی انتزاعی
getObject (مختصات طولانی...)
مقدار اسکالر موجود در مختصات داده شده را برمی‌گرداند.
انتزاعی BooleanNdArray
خواندن ( DataBuffer <Boolean> dst)
انتزاعی BooleanNdArray
Abstract NdArraySequence < BooleanNdArray >
اسکالر ()
دنباله ای از تمام اسکالرها در این آرایه را برمی گرداند.
انتزاعی BooleanNdArray
مجموعه ( NdArray <Boolean> src، طولانی... مختصات)
انتزاعی BooleanNdArray
setBoolean (مقدار بولی، مختصات طولانی...)
مقدار بولی اسکالر موجود در مختصات داده شده را اختصاص می دهد.
انتزاعی BooleanNdArray
setObject (مقدار بولی، مختصات طولانی...)
انتزاعی BooleanNdArray
برش ( شاخص ... شاخص)
یک نمای چند بعدی (یا برش) از این آرایه با نگاشت یک یا چند بعد به انتخابگرهای شاخص داده شده ایجاد می کند.
انتزاعی BooleanNdArray
نوشتن ( DataBuffer <Boolean> src)
انتزاعی BooleanNdArray

روش های ارثی

روش های عمومی

چکیده عمومی BooleanNdArray copyTo ( NdArray <Boolean> dst)

انتزاع عمومی NdArraySequence < BooleanNdArray > عناصر (int dimensionIdx)

دنباله ای از همه عناصر را در یک بعد معین برمی گرداند.

به طور منطقی، آرایه بعدی N را می توان در یک بردار واحد مسطح کرد، جایی که اسکالرهای عنصر (n - 1) قبل از عنصر (n) ام، برای کل مقادیر 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

دریافت انتزاعی عمومی BooleanNdArray (مختصات طولانی...)

عنصر N بعدی این آرایه را در مختصات داده شده برمی گرداند.

عناصر هر یک از ابعاد این آرایه قابل بازیابی هستند. به عنوان مثال، اگر تعداد مختصات برابر با تعداد ابعاد این آرایه باشد، یک آرایه رتبه-0 (اسکالر) برگردانده می شود که با فراخوانی «array.getObject()» مقدار آن را می توان به دست آورد.

هر تغییری که در عناصر برگشتی اعمال شود، داده های این آرایه را نیز تحت تأثیر قرار می دهد، زیرا هیچ کپی در کار نیست.

توجه داشته باشید که فراخوانی این روش روشی معادل و کارآمدتر برای برش این آرایه بر روی یک اسکالر است، یعنی array.get(x, y, z) برابر است با array.slice(at(x), at(y), at(z))

مولفه های
مختصات مختصات عنصر برای دسترسی، هیچ یک این آرایه را بر نمی گرداند
برمی گرداند
  • عنصر موجود در این شاخص

دریافت بولی انتزاعی عمومی (مختصات بلند...)

مقدار بولی اسکالر موجود در مختصات داده شده را برمی گرداند.

برای دسترسی به عنصر اسکالر، تعداد مختصات ارائه شده باید با تعداد ابعاد این آرایه (یعنی رتبه آن) برابر باشد. به عنوان مثال:

BooleanNdArray matrix = NdArrays.ofBooleans(shape(2, 2));  // matrix rank = 2
  matrix.getBoolean(0, 1);  // succeeds, returns false
  matrix.getBoolean(0);  // throws IllegalRankException

  BooleanNdArray scalar = matrix.get(0, 1);  // scalar rank = 0
  scalar.getBoolean();  // succeeds, returns false
 

مولفه های
مختصات مختصات اسکالر برای حل کردن
برمی گرداند
  • ارزش آن اسکالر
پرتاب می کند
IndexOutOfBoundsException اگر برخی از مختصات خارج از محدوده بعد مربوطه خود باشند
IllegalRankException اگر تعداد مختصات برای دسترسی به یک عنصر اسکالر کافی نباشد

انتزاعی عمومی 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); .

مولفه های
مختصات مختصات اسکالر برای حل کردن
برمی گرداند
  • ارزش آن اسکالر

چکیده عمومی BooleanNdArray خوانده شده ( DataBuffer <Boolean> dst)

خواندن چکیده عمومی BooleanNdArray ( BooleanDataBuffer dst)

چکیده عمومی NdArraySequence < BooleanNdArray > اسکالرها ()

دنباله ای از تمام اسکالرها در این آرایه را برمی گرداند.

این معادل فراخوانی elements(shape().numDimensions() - 1)

برمی گرداند
  • یک دنباله NdArray

مجموعه انتزاعی عمومی BooleanNdArray ( NdArray <Boolean> src، long... مختصات)

انتزاع عمومی BooleanNdArray setBoolean (مقدار بولی، مختصات طولانی...)

مقدار بولی اسکالر موجود در مختصات داده شده را اختصاص می دهد.

برای دسترسی به عنصر اسکالر، تعداد مختصات ارائه شده باید با تعداد ابعاد این آرایه (یعنی رتبه آن) برابر باشد. به عنوان مثال:

BooleanNdArray matrix = NdArrays.ofBooleans(shape(2, 2));  // matrix rank = 2
  matrix.setBoolean(true, 0, 1);  // succeeds
  matrix.setBoolean(true, 0);  // throws IllegalRankException

  BooleanNdArray scalar = matrix.get(0, 1);  // scalar rank = 0
  scalar.setBoolean(true);  // succeeds
 

مولفه های
ارزش مقدار برای تخصیص
مختصات مختصات اسکالر برای تخصیص
برمی گرداند
  • این آرایه
پرتاب می کند
IndexOutOfBoundsException اگر برخی از مختصات خارج از محدوده بعد مربوطه خود باشند
IllegalRankException اگر تعداد مختصات برای دسترسی به یک عنصر اسکالر کافی نباشد

انتزاع عمومی BooleanNdArray setObject (مقدار بولی، مختصات طولانی...)

برش انتزاعی عمومی BooleanNdArray ( شاخص ... شاخص)

یک نمای چند بعدی (یا برش) از این آرایه با نگاشت یک یا چند بعد به انتخابگرهای شاخص داده شده ایجاد می کند.

برش ها امکان عبور از یک آرایه 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 این آرایه شروع می شود.
برمی گرداند
  • عنصر حاصل از انتخاب شاخص

نوشتن چکیده عمومی BooleanNdArray ( DataBuffer <Boolean> src)

نوشتن چکیده عمومی BooleanNdArray ( BooleanDataBuffer src)