Java Hibernate从值列表到多维双数组

Java Hibernate从值列表到多维双数组,java,hibernate,matlab,dynamic-arrays,Java,Hibernate,Matlab,Dynamic Arrays,下面是我试图从Hibernate返回的列表中构建的多维数组double[]: data列表进入makeSet,makeSet尝试返回一个[]double数组。最理想的情况是,我不知道应该有多少阵列。因此,我尝试调用makeInnerSet,但除非我在代码中创建一个新的double[][]ix,iy,否则代码不会很好地迭代 是否有办法知道数组[][]的列? 也许还有其他解决问题的方法吗? List data = qry.list(); double[][] inputData = makeSet(

下面是我试图从Hibernate返回的列表中构建的多维数组double[]:

data
列表进入
makeSet
makeSet
尝试返回一个
[]double
数组。最理想的情况是,我不知道应该有多少阵列。因此,我尝试调用
makeInnerSet
,但除非我在代码中创建一个
新的double[][]ix,iy
,否则代码不会很好地迭代

是否有办法知道数组[][]的列?

也许还有其他解决问题的方法吗?

List data = qry.list();
double[][] inputData = makeSet(data);

public double[] makeInnerSet(List data, double[] ix, int col ){
    int i = 0;
    Iterator<?> itr1 = data.listIterator();
    while (itr1.hasNext()) {
        Object[] result = (Object[]) itr1.next();
        if (result[col] != null) {
            double res1 = (Double) result[col];
            ix[i] = res1;
        }else{
            ix[i] = 0;
        }
        i++;
    }
    return ix;
}
public double[][] makeSet(List data){
    Iterator<?> itr1 = data.listIterator();
    double[] ix = new double[data.size()];
    double[] iy = new double[data.size()];
    double[][] x = { makeInnerSet(data, iy,0), makeInnerSet(data, ix,1) };  
    return x;
}
必须收回Hibernate的标量值,并使其加倍[][]。有什么帮助吗?

List data = qry.list();
double[][] inputData = makeSet(data);

public double[] makeInnerSet(List data, double[] ix, int col ){
    int i = 0;
    Iterator<?> itr1 = data.listIterator();
    while (itr1.hasNext()) {
        Object[] result = (Object[]) itr1.next();
        if (result[col] != null) {
            double res1 = (Double) result[col];
            ix[i] = res1;
        }else{
            ix[i] = 0;
        }
        i++;
    }
    return ix;
}
public double[][] makeSet(List data){
    Iterator<?> itr1 = data.listIterator();
    double[] ix = new double[data.size()];
    double[] iy = new double[data.size()];
    double[][] x = { makeInnerSet(data, iy,0), makeInnerSet(data, ix,1) };  
    return x;
}
一半人找到了我的答案…几秒钟后。。。
我现在当然不需要ix了,艾伊。但是如何计算列表中的列数呢?

假设列表中的所有数组都具有相同的大小(因为否则makeinnerset也会爆炸):


代码获取第一个数组并获取其大小,所有数组的大小都应该相同。

int columns=((object[])data.first()).size()
?Firo,在我看来,这似乎有点奇怪,你先问()然后问size(),我可以猜它会带来列中列表的长度,而不是宽度。但最主要的是,代码在铸造和其他一些尝试修复后也会产生错误。
int columns = ((Object[])data.first()).size()