将MatlabJavaBuilder输出对象元素转换为数组

将MatlabJavaBuilder输出对象元素转换为数组,java,arrays,matlab,object,javabuilders,Java,Arrays,Matlab,Object,Javabuilders,我的任务是使用MATLAB Builder将一个MATLAB函数转换为Java类,现在我得到了从一个类到另一个类的结果,因为MATLAB Builder只输出一个对象,所以我遇到了问题 import java.util.*; import com.mathworks.toolbox.javabuilder.*; public class mainKrigTau { public static void main(String[] args) { Object[] resultT

我的任务是使用MATLAB Builder将一个MATLAB函数转换为Java类,现在我得到了从一个类到另一个类的结果,因为MATLAB Builder只输出一个对象,所以我遇到了问题

import java.util.*;

import com.mathworks.toolbox.javabuilder.*;

public class mainKrigTau {

public static void main(String[] args) {

    Object[] resultT = null;
    Object[] resultK = null;
    Object[] resultB = null;
    krigingTau Tau = null;
    krigingTau Krig = null;
    Branin branin = null;

    try {

        Tau = new krigingTau();
        Krig = new krigingTau();
        branin = new Branin();
        resultT = Tau.LPtau(1, 100, 2, 1234);
        List<Object> X = Arrays.asList(resultT[0]);
        System.out.println(X);
        System.out.println((X.size()));


    } catch (MWException e) 
            {
        e.printStackTrace();
    } finally 
            {
    }
import java.util.*;
导入com.mathworks.toolbox.javabuilder.*;
公共类mainKrigTau{
公共静态void main(字符串[]args){
Object[]resultT=null;
对象[]resultK=null;
对象[]resultB=null;
krigingTau-Tau=null;
krigingTau Krig=null;
Branin-Branin=null;
试一试{
Tau=新的krigingTau();
Krig=新的krigingTau();
branin=新branin();
结果t=Tau.LPtau(1100,21234);
List X=Arrays.asList(resultT[0]);
系统输出println(X);
System.out.println((X.size());
}捕获(MWE)
{
e、 printStackTrace();
}最后
{
}

因此Tau类的输出基本上是一个2D数组,因此数组被嵌入到resultT[]对象,如何访问此数组?我尝试过的一种方法是如上所述,将其更改为数组列表,X输出数组,但我无法访问数组的组件。X.size=1,而不是数组的实际大小100。编辑-只是添加,我能找到的所有示例都只输出结果对象并显示它,而不是do有什么问题。

好的,附近的一位软件工程师前来救援。这有点迂回,但它可以工作

    try {

        Tau = new krigingTau();
        Krig = new krigingTau();
        branin = new Branin();

        resultT = Tau.LPtau(1, 100, 2, 1234);
        List<Object> X = Arrays.asList(resultT[0]);         

        if (X.get(0) instanceof MWNumericArray) {

            MWNumericArray mw= (MWNumericArray) X.get(0);
            ArrayList<Point> lists = new ArrayList<Point>();
            for(int i = 1; i <= mw.numberOfElements()/2; i++){
                Object o = mw.get(i);
                System.out.println(o);
                Double x = (Double) mw.get(i);
                Double y = (Double) mw.get((mw.numberOfElements()/2)+i);
                Point p = new Point(x.doubleValue(),y.doubleValue());
                lists.add(p);
            }

            for(int i = 1; i < mw.numberOfElements()/2; i++)
            {

                resultB = branin.branin(1, lists.get(i).array);
                System.out.println(resultB[0]);
            }
试试看{
Tau=新的krigingTau();
Krig=新的krigingTau();
branin=新branin();
结果t=Tau.LPtau(1100,21234);
List X=Arrays.asList(resultT[0]);
if(X.get(0)MWNumericArray实例){
MWNumericArray mw=(MWNumericArray)X.get(0);
ArrayList list=新的ArrayList();
对于(int i=1;i