Правила для преобразования данных между 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- N массив char с N равняйтесь длине входной строки.

Массив строк Java (String[]) преобразован в M- 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 не имеет никаких типов без знака, чтобы представлять uint8uint16uint32, и uint64 типы используются в MATLAB. Конструкция и доступ к массивам MATLAB типа без знака требуют преобразования.