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

艾米

我已经下达了使用MATLAB Builder将MATLAB函数转换为Java类的任务,现在我已经将一个类的结果馈送到另一个类中了,因为MATLAB构建器只会输出一个对象,我遇到了问题。

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 
            {
    }

因此,基本上Tau类的输出是2D数组,因此该数组嵌入到resultT []对象中,如何访问此数组?我尝试过的一种方法如上所述,将其更改为数组列表,X输出数组,但是我无法访问数组的组件。X.size = 1,而不是100,这是数组的实际大小。编辑-仅添加,我可以找到的所有示例仅输出结果对象并显示它,而不是对其进行任何处理。

艾米

好的,附近的软件工程师来了。这有点a回,但可以。

    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]);
            }

其中point将x和y的值设置为数组,因此将其设置为新的MWNumericArray并执行Object.get(i),但这会使数组变平,这是不理想的。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

PHP:将所有对象元素从字符串转换为int

来自分类Dev

将元素数组转换为JSON对象数组

来自分类Dev

如何将多个数组元素转换为对象

来自分类Dev

将对象元素转换为数组 int[] java spring

来自分类Dev

将元素转换为数组

来自分类Dev

将'%/%'从R转换为MATLAB

来自分类Dev

将数组转换为对象

来自分类Dev

将数组转换为对象

来自分类Dev

将数组转换为对象

来自分类Dev

将数组转换为对象

来自分类Dev

将数组的对象转换为对象的数组

来自分类Dev

防止MATLAB将单元素数组转换为非数组类型

来自分类Dev

将数组数组转换为对象数组

来自分类Dev

Java:将单个数组除以对象元素值分成 2 个数组

来自分类Dev

如何将Adobe Leonardo输出对象数组转换为更简单的对象以进行顺风配置

来自分类Dev

问题将Matlab代码转换为Python不可广播的输出

来自分类Dev

将Matlab结构数组转换为单元格数组

来自分类Dev

将matlab.double数组转换为python数组

来自分类Dev

将Matlab结构数组转换为单元格数组

来自分类Dev

将嵌套的对象数组转换为对象

来自分类Dev

将数组的对象转换为对象javascript

来自分类Dev

将文件对象转换为对象数组

来自分类Dev

将单个对象转换为对象数组

来自分类Dev

将数组转换为对象数组

来自分类Dev

将数组转换为对象数组

来自分类Dev

将数组转换为单个对象数组

来自分类Dev

将普通数组转换为对象数组

来自分类Dev

将输出转换为 numpy 数组

来自分类Dev

将2个元素数组的JavaScript数组转换为对象键值对