public class MWCellArray extends MWArray
MWCellArray
класс управляет собственным массивом ячеек MATLAB.EMPTY_ARRAY
Конструктор и описание |
---|
MWCellArray()
Создает пустой массив ячеек.
|
MWCellArray(int[] dims)
Создает новый массив ячеек с заданными измерениями.
|
MWCellArray(int rows, int cols)
Создает новую матрицу камер с заданным количеством строк и столбцов.
|
Модификатор и тип | Метод и описание |
---|---|
<T> T |
applyVisitor(AbstractMWArrayVisitor<T> v) |
MWArrayjava.util.List<> |
asList()
Укажите интерфейс java.util.List для массива ячеек.
|
MWClassID |
classID()
Возвращает тип MATLAB этого массива.
|
java.lang.Object |
clone()
Создает и возвращает глубокую копию этого массива.
|
int[] |
columnIndex()
Возвращает массив, содержащий индекс столбца каждого элемента в базовом массиве MATLAB.
|
int |
compareTo(java.lang.Object obj)
Сравнивает этот массив с заданным массивом для порядка точности.
|
MWArraystatic |
десериализовать(байтовые [] данные)
Создайте новый MWArray из сериализованных данных.
|
void |
dispose()
Освобождает собственный массив MATLAB, содержащийся в этом массиве.
|
boolean |
equals(java.lang.Object obj)
Указывает, равен ли какой-либо другой массив этому.
|
java.util.List<java.lang.Object> |
exportCells()
Экспорт камер в список объектов массива Java собственного типа.
|
java.lang.Object |
get(int index)
Возвращает элемент с заданным смещением на основе 1 в этом массиве.
|
java.lang.Object |
get(int[] index)
Возвращает элемент в указанном индексном массиве на основе 1 в этом массиве.
|
MWArray |
getCell(int индекс)
Возвращает общую копию элемента с заданным смещением на основе 1 в этом массиве как
MWArray образец. |
MWArray |
getCell(int [] индекс)
Возвращает общую копию элемента в указанном 1-базовом индексном массиве в этом массиве как
MWArray образец. |
java.lang.Object |
getData()
Возвращает массив 1-D, содержащий копию данных в базовом массиве MATLAB.
|
int[] |
getDimensions()
Возвращает массив, содержащий размер каждой размерности этого массива.
|
int |
hashCode()
Возвращает значение хеш- код для этого массива.
|
boolean |
isEmpty()
Проверяет, не имеет ли этот массив элементов.
|
boolean |
isSparse()
Проверяет, является ли этот массив разреженным.
|
int |
maximumNonZeros()
Возвращает выделенную емкость разреженного массива.
|
int |
numberOfDimensions()
Возвращает количество размерностей этого массива.
|
int |
numberOfElements()
Возвращает общее количество элементов в этом массиве.
|
int |
numberOfNonZeros()
Возвращает количество ненулевых элементов в разреженном массиве.
|
protected java.lang.Object |
readResolve()
Вызывается механизмом сериализации при загрузке нового массива из потока байтов.
|
int[] |
rowIndex()
Возвращает массив, содержащий индекс строка каждого элемента в базовом массиве MATLAB.
|
byte[] |
serialize()
Сериализуйте массив MATLAB в байтовый массив.
|
void |
set(int[] index, java.lang.Object element)
Заменяет элемент в указанном индексном массиве на 1 в этом массиве на заданный элемент.
|
void |
set(int index, java.lang.Object element)
Заменяет элемент с заданным смещением на 1 в этом массиве на заданный элемент.
|
void |
setData(java.lang.Object data) |
java.lang.Object |
sharedCopy()
Создает и возвращает общую копию этого массива.
|
java.lang.Object[] |
toArray()
Возвращает массив, содержащий копию данных в базовом массиве MATLAB.
|
java.lang.String |
toString()
Возвращает строку представление этого массива.
|
protected void |
validate()
Проверка указателя на внутренний массив.
|
disposeArray
public MWCellArray()
Пример: Построение объекта пустого массива ячеек
В этом примере создается пустой объект MWCellArray:MWCellArray C = new MWCellArray(); System.out.println("C = " + C.toString());При запуске в примере отображается следующий выход:
C = []
public MWCellArray(int[] dims)
dims
- Массив размерности размеров. Размер каждой размерности должен быть неотрицательным.java.lang.NegativeArraySizeException
- Задается отрицательный размер размерности. Пример: Построение инициализированного объекта массива ячеек
Этот пример создает и инициализирует объект 2 на 3 MWCellArray:int[] cdims = {2, 3}; MWCellArray C = new MWCellArray(cdims); Integer[] val = new Integer[6]; for (int i = 0; i < 6; i++) val[i] = new Integer(i * 15); for (int i = 0; i < 2; i++) for (int j = 0; j < 3; j++) { int[] idx = {i+1, j+1}; C.set(idx, val[j + (i * 3)]); } System.out.println("C = " + C.toString());При запуске в примере отображается следующий выход:
C = [ 0] [15] [30] [45] [60] [75]
public MWCellArray(int rows, int cols)
rows
- Количество строк. Количество строк должно быть неотрицательным.cols
- Количество столбцов. Количество столбцов должно быть неотрицательным.java.lang.NegativeArraySizeException
- Задается отрицательный размер строки или столбца.public java.lang.Object clone() throws java.lang.CloneNotSupportedException
MWCellArray
образец, представляющий глубокую копию базового массива MATLAB. Пример: Клонирование объекта массива ячеек
Создайте объект MWCellArray, а затем клон этого объекта:int[] cdims = {1, 3}; MWCellArray C = new MWCellArray(cdims); Object X = C.clone(); System.out.println("Clone of cell array C is:"); System.out.println(X.toString());При запуске в примере отображается следующий выход:
Clone of cell array C is: [] [] []
java.lang.CloneNotSupportedException
- - Класс объекта не реализует интерфейс Cloneable.public java.lang.Object sharedCopy()
MWCellArray
образец, представляющий общую копию базового массива MATLAB. Пример: Создание общей копии объекта массива ячеек
Создайте объект MWCellArray, а затем общую копию этого объекта:int[] cdims = {1, 3}; MWCellArray C = new MWCellArray(cdims); Object X = C.sharedCopy(); System.out.println("Shared copy of cell array C is:"); System.out.println(X.toString());При запуске в примере отображается следующий выход:
Shared copy of cell array C is: [] [] []
public MWClassID classID()
MWClassID.CELL
для MWCellArray
. Пример: Получение идентификатора класса массива ячеек
Создайте объект MWCellArray и отобразите его класс:int[] cdims = {2, 3}; MWCellArray C = new MWCellArray(cdims); System.out.println("Class of C is " + C.classID());При запуске в примере отображается следующий выход:
Class of C is cell
public void set(int index, java.lang.Object element)
index
- индекс заменяемого элемента. Допустимая область значений: 1 < = индекс < = N, где N = общее количество элементов в массивеelement
- Новый элемент для замены по индексу. Если элемент имеет тип MWArray
значение камеры по индексу устанавливается на общую копию базового массива MATLAB. В противном случае новый массив MATLAB создается из элемента с помощью правил преобразования по умолчанию и назначается камера по индексу.java.lang.IndexOutOfBoundsException
- указан недопустимый индекс. Пример: Установка значений в массиве ячеек
Установите значение объекта MWCellArray C в индексе (1,3):int[] cdims = {1, 3}; MWCellArray C = new MWCellArray(cdims); Integer val = new Integer(15); int[] index = {1, 3}; C.set(index, val); Object x = C.get(index); System.out.println("Cell data C(1,3) is " + x.toString());При запуске в примере отображается следующий выход:
Cell data C(1,3) is 15
public void set(int[] index, java.lang.Object element)
index
- Массив индексов, определяющих местоположение заменяемого элемента. Длина индекса массива должна быть в точности количеством размерностей этого массива. Каждый элемент индексного массива имеет допустимую область значений: 1 < = index [i] < = N [i], где N [i] = размер i-го размерностиelement
- Новый элемент для замены по индексу. Если элемент имеет тип MWArray
значение камеры по индексу устанавливается на общую копию базового массива MATLAB. В противном случае новый массив MATLAB создается из элемента с помощью правил преобразования по умолчанию и назначается камера по индексу.java.lang.IndexOutOfBoundsException
- указан недопустимый индекс.public java.lang.Object get(int index)
getCell(index).toArray()
.index
- индекс запрашиваемого элемента. Допустимая область значений: 1 < = индекс < = N, где N = общее количество элементов в массивеjava.lang.IndexOutOfBoundsException
- указан недопустимый индекс. Пример: Получение данных из массива ячеек с get
int[] cdims = {1, 3}; MWCellArray C = new MWCellArray(cdims); Integer val = new Integer(15); int[] index2 = {1, 3}; C.set(index2, val); Object x = C.get(index2); if (x instanceof int[][]) { int[][] y = (int[][])x; System.out.println("B: Cell data C(1,3) is " + y[0][0]); }При запуске в примере отображается следующий выход:
B: Cell data C(1,3) is 15
public java.lang.Object get(int[] index)
getCell(index).toArray()
.index
- Массив индексов, определяющих местоположение запрашиваемого элемента. Длина индекса массива должна быть в точности количеством размерностей этого массива. Каждый элемент индексного массива имеет допустимую область значений: 1 < = index [i] < = N [i], где N [i] = размер i-го размерностиjava.lang.IndexOutOfBoundsException
- указан недопустимый индекс.public MWArray getCell(int index)
MWArray
образец.index
- индекс запрашиваемого элемента. Допустимая область значений: 1 < = индекс < = N, где N = общее количество элементов в массивеMWArray
образец, представляющий запрошенную камеру. Этот MWArray
ссылка должна быть dsiposed путем вызова MWArray.dispose()
.java.lang.IndexOutOfBoundsException
- указан недопустимый индекс.public MWArray getCell(int[] index)
MWArray
образец.index
- Массив индексов, определяющих местоположение запрашиваемого элемента. Длина индекса массива должна быть в точности количеством размерностей этого массива. Каждый элемент индексного массива имеет допустимую область значений: 1 < = index [i] < = N [i], где N [i] = размер i-го размерностиMWArray
образец, представляющий запрошенную камеру. Этот MWArray
ссылка должна быть dsiposed путем вызова MWArray.dispose()
.java.lang.IndexOutOfBoundsException
- указан недопустимый индекс.public java.lang.Object getData()
MWArray.toArray()
в соответствующей камере. Пример: Получение данных массива ячеек с getData
Используйте getData, чтобы считать данные из объекта MWCellArray C:int[] cdims = {1, 3}; MWCellArray C = new MWCellArray(cdims); Integer[] val = new Integer[3]; for (int i = 0; i < 3; i++) val[i] = new Integer(i * 15); for (int i = 1; i <= 3; i++) C.set(i, val[i-1]); System.out.println("Data read from cell array C: \n"); MWArray[] x = (MWArray[]) C.getData(); for (int i = 0; i < x.length; i++) System.out.println(x[i]); System.out.println();При запуске в примере отображается следующий выход:
Data read from cell array C: 0 0 0
public java.lang.Object[] toArray()
MWArray.toArray()
в соответствующей камере. Пример: Получение данных массива ячеек с помощью toArray
int[] cdims = {1, 3}; MWCellArray C = new MWCellArray(cdims); System.out.println("Data read from cell array C \n"); Object x = (Object) C.toArray(); System.out.println(); for (int i = 0; i < x[0].length; i++) System.out.println(x[0][i]);При запуске в примере отображается следующий выход:
Data read from cell array C [] [] []
public <T> T applyVisitor(AbstractMWArrayVisitor<T> v)
protected void validate()
public java.util.List<MWArray> asList()
public java.util.List<java.lang.Object> exportCells()
public byte[] serialize() throws java.io.IOException
java.io.IOException
- если массив не может быть сериализован. Для примера исполняемое содержимое (указатели на функции, образцы классов) не может быть сериализовано.public static MWArray deserialize(byte[] data)
data
- сериализованный массив, возвращенный MWArray.serializepublic int numberOfDimensions()
numberOfDimensions
в классах MWArray
public int[] getDimensions()
getDimensions
в классах MWArray
public boolean isEmpty()
public boolean isSparse()
public boolean equals(java.lang.Object obj)
public int compareTo(java.lang.Object obj)
public int hashCode()
public java.lang.String toString()
public int numberOfElements()
numberOfElements
в классах MWArray
public int numberOfNonZeros()
numberOfElements()
.numberOfNonZeros
в классах MWArray
public int maximumNonZeros()
numberOfElements()
.maximumNonZeros
в классах MWArray
public void dispose()
dispose
в интерфейсных Disposable
dispose
в классах MWArray
public int[] rowIndex()
public int[] columnIndex()
columnIndex
в классах MWArray
protected java.lang.Object readResolve() throws java.io.ObjectStreamException
java.io.InvalidObjectException
- Попытка загрузить недопустимый указатель на массив.java.io.ObjectStreamException
© 1994-2017 The MathWorks, Inc. • патенты • торговые марки