主要内容

不正确java.数据类型

java.字符串到马铃薯字符向量

字符向量结构

一些matlab.®功能接受A.塑造名称 - 值对作为输入参数。用于Java的Matlab引擎API®提供com.mathworks.matlab.engine.struct.Struct.类以在Java中创建此数据结构并将其传递给Matlab,它将其转换为Matlab塑造

一些Matlab函数接受塑造输入需要字段值是MATLAB字符向量(char)而不是matlab字符串(细绳)。创建一个java塑造使用正确类型的值,转换为细绳char在将变量传递给MATLAB之前的数组。

你可以使用Tochararray.转换方法:

char [] in =“on”.tharaRarray();char [] yout =“yout”.techararray();char [] tout =“tout”.techararray();struct simparam = new struct(“saveoutput”,on,“outputsavename”,yout,“saveTime”,on,“timeavename”,tout);

字符串对字符矢量的参数

当MATLAB功能需要时char输入,您可以转换Java细绳在函数调用中传递给matlab。例如,matlab求解功能需要char输入:

双重结果=引擎。reval(“eval”,“3 + 5”);用于“字符串”类型的输入参数的未定义功能'eval'。

通过Achar阵列正常工作。

双重结果=引擎。reval(“eval”,“3 + 5”.techararray());

设置图形对象属性java.

您可以使用对象的句柄设置MATLAB图形对象属性的值。将属性名称和属性值传递为Javachar传递给Matlab函数时数组。

double [] [] data = {{1.0,2.0,3.0},{-1.0,-2.0,-3.0}};handleObject [] h = eng.feval(“plot”,(对象)数据);字符串属性=(“hittest”);字符串值=(“关”);eng.feval(0,“set”,h,property.toCharArray(),value.toCharArray());

java.整数到马铃薯双倍的

一些matlab功能,如SQRT.限制输入双倍的或者单身的精度值。Matlab引擎将Java Integers转换为MatlabINT32.价值观。对于不接受整数值的MATLAB函数,请确保通过适当的数值。

双重结果=引擎.Feval(“SQRT”,4);用于输入参数的未定义函数'sqrt'类型'int32'的输入参数。

正确通过双重工作。

双重结果=引擎.Feval(“SQRT”,4.0);

相关话题