Реклама:

toLongArray, toShortArray, tolmagArray, tolmagByteArray,

tolmagDoubleArray, tolmagFloatArray, tolmagIntArray, tolmagLongArray, toImagShortArray.

Эти методы возвращают массив Java, соответствующий примитивному типу в имени метода. Возвращенный массив имеет ту же самую размерность как и основной массив MATLAB и указанный в методе тип. Например, если вызывается toShortArray, то возвращается массив типа short, независимо от типа данных в основном массиве. Поэтому при выполнении преобразования возможно усечение или другая потеря точности. Например, если вызывается toFloatArray на экземпляре класса MWArray, содержащего данные с двойной точностью, значения double усекаются до значений float - значений с одинарной точностью. Рекомендуемое соответствие типов указано в табл. 3.5.2.

Эти методы могут также быть полезными в определении типов в массиве Java, когда размерность вещественного или комплексного массива MWArray известна, но тип данных - нет. Для получения дополнительной информации можно обратиться к документации MATLAB, JavaDoc.

Пример. Следующий код показывает преобразование массива MATLAB в массив указанного примитивного типа тех же измерений.

Object results = null; try {

// вызов скомпилированной m-функции

results = myobject.myfunction(2); // известно, что первый вывод является числовой матрицей

MWArray resultA = (MWNumericArray) results[0];

double[][] a = resultA.toDoubleArray(); // известно, что второй вывод является 3-мерным числовым массивом MWArray resultB = (MWNumericArray) results[1]; Int[][][] b = resultB.toIntArray();

}

finally {

MWArray.disposeArray(results);

}

Для преобразования массива MATLAB в одномерный массив указанного примитивного типа данных используются следующие методы getTypeArray: getByteData, getDoubleData, getFloatData, getIntData,

getLongData, getShortData, getlmagData, getlmagByteData,

getlmagDoubleData, getlmagFloatData, getlmaglntData, getlmagLongData, getImagShortData

Примеры использования методов см. в следующих разделах.

Методы работы с разреженными массивами MWNumericArray

Операции на разреженных массивах типа MWNumericArray в настоящее время поддерживаются только для типа double. Для получения информации относительно разреженных массивов типа MWNumericArray используются следующие методы. Все они унаследованы от класса MWArray.

• newSparse - создание вещественной разреженной числовой матрицы с указанным числом строк и столбцов и максимальным числом элементов отличных от нуля, инициализация массива поставляемыми данными;

• isSparse - проверка разреженности массива;

• columnIndex - возвращает массив, содержащий индексы столбцов каждого ненулевого элемента в основном массиве MATLAB;

• rowIndex - возвращает массив, содержащий индексы строк каждого ненулевого элемента в основном массиве MATLAB;

• maximumNonZeros - возвращает вместимость разреженного массива. Если основной массив неразрежен, этот метод возвращает то же значение, что и numberOfElements();

• numberOfNonZeros - возвращает число ненулевых элементов в разреженном массиве. Если основной массив неразрежен, этот метод возвращает то же, что и numberOfElements().


⇐ Предыдущая страница| |Следующая страница ⇒