Правила для преобразования данных между Java и MATLAB

Java к преобразованию MATLAB

В следующей таблице перечислены правила преобразования данных для преобразования типов данных Java® к типам MATLAB®.

Примечание

Правила преобразования применяются к скалярам, векторам, матрицам и многомерным массивам перечисленных типов.

Правила преобразования применяются не только когда вызов ваших собственных методов, но также и при вызове конструкторов и методов фабрики, принадлежащих классам MWArray.

Когда вызов конструктора метода класса MWArray, предоставление определенного типа данных заставляют компилятор преобразовывать в тот тип вместо значения по умолчанию.

Java к правилам преобразования MATLAB

Тип JavaТип MATLAB

double

double

float

single

byte

int8

int

int32

short

int16

long

int64

char

char

boolean

logical

java.lang.Double

double

java.lang.Float

single

java.lang.Byte

int8

java.lang.Integer

int32

java.lang.Long

int64

java.lang.Short

int16

java.lang.Number

double

Примечание

Подклассы java.lang.Number, не упомянутого выше, преобразованы в double.

java.lang.Boolean

logical

java.lang.Character

char

java.lang.String

char

Примечание

Строка Java преобразована в 1-by-N массив char с N, равным длине входной строки.

Массив строк Java (String[]) преобразован в M-by-N массив char с M, равным числу элементов во входном массиве и N, равном максимальной длине любой из строк в массиве.

Выше размерные массивы String преобразованы так же.

В целом N - размерный массив String преобразован в N+1 размерный массив char с соответствующим нулевым дополнением, где предоставленные строки имеют различные длины.

MATLAB к преобразованию Java

В следующей таблице перечислены правила преобразования данных для преобразования типов данных MATLAB к типам Java.

Примечание

Правила преобразования применяются к скалярам, векторам, матрицам и многомерным массивам перечисленных типов.

MATLAB к правилам преобразования Java

Тип MATLAB(Примитивный) тип JavaТип Java (объект)
cellНе применяется

Object

Примечание

Массивы ячеек созданы и получены доступ как массивы MWArray.

structureНе применяется

Object

Примечание

Массивы структур созданы и получены доступ как массивы MWArray.

charcharjava.lang.Character
doubledoublejava.lang.Double
singlefloatjava.lang.Float
int8bytejava.lang.Byte
int16short

java.lang.Short

int32intjava.lang.Integer
int64longjava.lang.Long
uint8byte

java.lang.Byte

Java не имеет никакого типа без знака, чтобы представлять uint8, используемый в MATLAB. Конструкция и доступ к массивам MATLAB типа без знака требуют преобразования.

uint16

short

java.lang.short

Java не имеет никакого типа без знака, чтобы представлять uint16, используемый в MATLAB. Конструкция и доступ к массивам MATLAB типа без знака требуют преобразования.

uint32int

java.lang.Integer

Java не имеет никакого типа без знака, чтобы представлять uint32, используемый в MATLAB. Конструкция и доступ к массивам MATLAB типа без знака требуют преобразования.

uint64long

java.lang.Long

Java не имеет никакого типа без знака, чтобы представлять uint64, используемый в MATLAB. Конструкция и доступ к массивам MATLAB типа без знака требуют преобразования.

logicalbooleanjava.lang.Boolean
Указатель на функциюНе поддерживаемый
Класс JavaНе поддерживаемый
Пользовательский классНе поддерживаемый

Неподдерживаемые типы массива MATLAB

Java не имеет никаких типов без знака, чтобы представлять uint8, uint16, uint32 и типы uint64, используемые в MATLAB. Конструкция и доступ к массивам MATLAB типа без знака требуют преобразования.