主要内容

通过数据Java方法

MATLAB类型Java类型映射

当你通过MATLAB®Java数据作为参数®方法,MATLAB将数据转换为类型最能代表数据的Java语言。类型映射信息在传递数据的参数的类型. lang,请参阅通过Java对象

下表中的每一行显示一个MATLAB类型随后可能的Java参数匹配,从左到右的顺序匹配的亲密。MATLAB类型(细胞数组除外)可以标量(1×1)数组或矩阵。Java类型可以是标量值或数组。

MATLAB的论点

Java参数类型(标量或数组)
以外的其他类型对象

最近的类型< - - - - - - - - - - - - - - - - - - - - - - - - >关闭类型

逻辑

布尔

字节

int

浮动

浮动

int

字节

布尔

浮动

uint8
int8

字节

int

浮动

uint16
int16

int

浮动

uint32
int32

int

浮动

uint64
int64

浮动

字符串标量,
特征向量,
字符标量

字符串

字符串数组,
单元阵列的特征向量
看到通过字符串参数

String []

Java类型的对象jClass

Java对象类型的jClass

的任何超类jClass

单元阵列的对象

对象[]

MATLAB对象

不支金宝app持的

阵列尺寸如何影响转换

这个词意味着下标的数量需要解决一个数组的元素。例如,5-by-1有一维数组,因为你个人使用一个数组元素下标索引。

在将MATLAB转换为Java数组,MATLAB处理维度以特殊的方式。MATLAB数组,数组中的维度是nonsingleton维度的数量。例如,10-by-1数组维度1。然而,1×1数组维数0,因为你不能索引一个标量值。在Java代码中,嵌套数组的数量决定了尺寸。例如,双[][]维度2,维0。

如果Java数组的维度的数量匹配MATLAB数组的维数n,那么Java数组转换n维度。如果Java数组已经不足n维度,然后转换滴单维度,从第一个开始。转换停止当剩余的数量维度匹配Java数组的维数。如果Java数组有超过n维度,然后用MATLAB添加拖单维度。

将数字转换为整型参数

当通过一个整数类型的Java方法需要一个Java整数参数,MATLAB之间的转换是一样的Java转换整数类型。特别是,如果超出范围整数,它不适合的参数类型的数量。对于超出范围的整数,MATLAB丢弃所有最低n位。的值n在参数类型的比特数。这种转换与MATLAB整数类型之间的转换,在超出范围的整数转换为目的地类型所代表的最大值或最小值。

如果参数是一个浮点数,那么MATLAB不相同的方式将它转换成一个整数作为Java。MATLAB首先将浮点数转换为64位带符号整数与小数部分截断。然后就好像它是一个处理数量int64论点。

浮点数太大了,在一个64位整数时(外的范围从263年263年。在这种情况下,MATLAB使用如下的转换:

  • int,,字节参数值0

  • 参数值java.lang.Long.MIN_VALUE

  • 1

  • 0

通过字符串参数

与一个参数定义为调用Java方法向量,通过MATLAB字符串或字符。MATLAB将参数转换为Java字符串对象。你也可以通过字符串对象返回的Java方法。

如果参数是一个数组类型的方法字符串,然后通过一个字符串数组或单元阵列的特征向量。MATLAB将输入转换为一个Java数组的字符串描述的对象,与尺寸调整阵列尺寸如何影响转换

通过Java对象

调用一个方法,论证属于一个Java类(除了java . lang . object),您必须通过一个Java对象是类的一个实例。MATLAB不支持Java自动装金宝app箱,MATLAB的自动转换到Java类型对象类型。例如,MATLAB不转换java.lang.Double类型的参数

通过java . lang . object

一种特殊情况存在的方法接受一个参数java . lang . object类。由于这类是Java类层次结构的根,可以通过参数的任何类的对象。MATLAB自动转换参数最接近Java对象类型,它可能包括java风格的自动装箱。此表显示了转换。

MATLAB的论点

Java对象在包. lang

逻辑

布尔

浮动

字符标量

字符

字符串标量
非空的字符向量

字符串

uint8
int8

字节

uint16
int16

uint32
int32

整数

uint64
int64

字符串阵列(nonscalar)
单元阵列的特征向量

String []

Java对象

参数不变

单元阵列

对象[]

MATLAB对象

不支金宝app持的

通过数组对象

与一个参数定义为调用一个方法java . lang . object或数组java . lang . object,通过一个Java数组或MATLAB单元阵列。MATLAB自动转换单元阵列元素中描述他们的Java类型通过java . lang . object表。一个Java Java构造函数返回的数组是一个数组。你也可以构建一个Java数组在MATLAB中使用javaArray函数。

通过单元阵列Java对象

创建一个Java对象的单元阵列,使用MATLAB的语法{a1, a2,…}。你索引单元阵列的Java对象以通常的方式,与语法{m, n,…}。例如,创建单元阵列一个:

a1 = java.lang.Double (100);a2 = java.lang.Float (200);一个= {a1, a2}
= 1×2单元阵列(1×1 . lang。双][1×1 java.lang.Float]

通过空矩阵,null,缺失值

MATLAB将空矩阵如下所示。

  • 如果参数是一个空的特征向量并声明为参数字符串,然后用MATLAB在空(不通过)Java字符串对象。

  • 对于所有其他情况下,MATLAB将一个空数组转换为Java

空(0Java数组长度)保持不变。

MATLAB转换<失踪>值在字符串

重载方法

一个Java对象上调用重载方法时,MATLAB将参数传递给方法的参数定义。在这种背景下,这个词方法包括构造函数。MATLAB决定了方法调用和参数转换为Java类型根据Java转换规则。有关更多信息,请参见通过数组对象

当你调用Java方法,MATLAB确保:

  1. 对象或类(静态方法)方法的名称。

  2. 相同数量的参数的调用通过至少一个方法的名称。

  3. 每个传递参数是转换为Java类型定义的方法。

如果满足这些条件,那么MATLAB调用该方法。

在调用重载方法,如果有多个候选人,MATLAB选择一个最适合的参数调用参数。首先,MATLAB拒绝与传递的参数类型不兼容的方法参数。例如,如果有一个方法参数,即一个字符参数是不相容的。

MATLAB选择最高的方法健身价值、健身价值之和的所有参数。每个参数是健身的健身价值的基类型- MATLAB数组维度之间的差异和Java数组维度。数组维数的信息,请参阅阵列尺寸如何影响转换。如果两个有相同的健身方法,那么Java类中定义的第一个选择。

相关的话题