FloatNdArray

общедоступный интерфейс FloatNdArray
Известные косвенные подклассы

NdArray чисел с плавающей запятой.

Публичные методы

абстрактный FloatNdArray
copyTo ( NdArray <Float> dst)
абстрактный NdArraySequence < FloatNdArray >
элементы (int DimensionIdx)
Возвращает последовательность всех элементов заданного измерения.
абстрактный FloatNdArray
получить (длинные... координаты)
Возвращает N-мерный элемент этого массива по заданным координатам.
абстрактный поплавок
getFloat (длинные... координаты)
Возвращает значение с плавающей запятой скаляра, найденного в заданных координатах.
абстрактный Плавающий
getObject (длинные... координаты)
Возвращает значение скаляра, найденного в заданных координатах.
абстрактный FloatNdArray
абстрактный FloatNdArray
чтение ( DataBuffer <Float> dst)
абстрактный NdArraySequence < FloatNdArray >
скаляры ()
Возвращает последовательность всех скаляров в этом массиве.
абстрактный FloatNdArray
set ( NdArray <Float> src, long... координаты)
абстрактный FloatNdArray
setFloat (число с плавающей запятой, длинные... координаты)
Присваивает плавающее значение скаляра, найденного в заданных координатах.
абстрактный FloatNdArray
setObject (плавающее значение, длинные... координаты)
абстрактный FloatNdArray
срез ( Индекс... координаты)
Создает многомерное представление (или срез) этого массива путем сопоставления одного или нескольких измерений с заданными селекторами индекса.
абстрактный FloatNdArray
запись ( DataBuffer <Float> src)
абстрактный FloatNdArray

Унаследованные методы

Публичные методы

общедоступный абстрактный FloatNdArray copyTo ( NdArray <Float> dst)

общедоступные абстрактные элементы NdArraySequence < FloatNdArray > (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);
    });
 }

Параметры
измерениеIdx индекс измерения
Возврат
  • последовательность NdArray

общедоступный абстрактный FloatNdArray get (длинные... координаты)

Возвращает N-мерный элемент этого массива по заданным координатам.

Можно извлечь элементы любого измерения этого массива. Например, если количество координат равно количеству измерений этого массива, то возвращается массив ранга 0 (скалярный), значение которого затем можно получить, вызвав `array.getObject()`.

Любые изменения, примененные к возвращаемым элементам, также влияют на данные этого массива, поскольку копирование не требуется.

Обратите внимание, что вызов этого метода является эквивалентным и более эффективным способом разрезать этот массив на один скаляр, т.е. array.get(x, y, z) равен array.slice(at(x), at(y), at(z))

Параметры
координаты координаты элемента, к которому осуществляется доступ, никто не вернет этот массив
Возврат
  • элемент по этому индексу

общедоступный абстрактный float getFloat (длинные... координаты)

Возвращает значение с плавающей запятой скаляра, найденного в заданных координатах.

Для доступа к скалярному элементу количество предоставленных координат должно быть равно количеству измерений этого массива (т.е. его рангу). Например:

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

  FloatNdArray scalar = matrix.get(0, 1);  // scalar rank = 0
  scalar.getFloat();  // succeeds, returns 0.0f
 

Параметры
координаты координаты скаляра для разрешения
Возврат
  • значение этого скаляра
Броски
Индексаутофбаундсисключение если некоторые координаты находятся за пределами соответствующего измерения
IllegalRankException если количества координат недостаточно для доступа к скалярному элементу

общедоступный абстрактный Float 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); .

Параметры
координаты координаты скаляра для разрешения
Возврат
  • значение этого скаляра

публичное абстрактное чтение FloatNdArray ( FloatDataBuffer dst)

общедоступное абстрактное чтение FloatNdArray ( DataBuffer <Float> dst)

общедоступный абстрактный NdArraySequence < FloatNdArray > скаляры ()

Возвращает последовательность всех скаляров в этом массиве.

Это эквивалентно вызову elements(shape().numDimensions() - 1)

Возврат
  • последовательность NdArray

общедоступный абстрактный набор FloatNdArray ( NdArray <Float> src, long... координаты)

общедоступный абстрактный FloatNdArray setFloat (значение с плавающей запятой, длинные... координаты)

Присваивает плавающее значение скаляра, найденного в заданных координатах.

Для доступа к скалярному элементу количество предоставленных координат должно быть равно количеству измерений этого массива (т.е. его рангу). Например:

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

  FloatNdArray scalar = matrix.get(0, 1);  // scalar rank = 0
  scalar.setFloat(10.0f);  // succeeds
 

Параметры
ценить значение для присвоения
координаты координаты скаляра, который нужно назначить
Возврат
  • этот массив
Броски
Индексаутофбаундсисключение если некоторые координаты находятся за пределами соответствующего измерения
IllegalRankException если количества координат недостаточно для доступа к скалярному элементу

общедоступный абстрактный FloatNdArray setObject (значение с плавающей запятой, длинные... координаты)

общедоступный абстрактный фрагмент FloatNdArray ( индекс... координаты)

Создает многомерное представление (или срез) этого массива путем сопоставления одного или нескольких измерений с заданными селекторами индекса.

Срезы позволяют перемещаться по 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 этого массива.
Возврат
  • элемент, полученный в результате выбора индекса

общедоступная абстрактная запись FloatNdArray ( DataBuffer <Float> src)

публичная абстрактная запись FloatNdArray ( FloatDataBuffer src)