内存友好ArrayList <double [] =“”>转换为2D数组double </double>

时间:2014-05-23 07:09:54

标签: java memory type-conversion

关于性能和内存分配的问题。我有一个返回ArrayList<double[]>的代码,我想转换为double[][]。问题是,因为我必须获得2D数组的维度,所以没有创建中间变量(features)的第二种方法是否更加内存友好?

更具体的lbpFeatures.getFeatures().size()lbpFeatures.getFeatures().get(0).length运行此方法两次(加上1为LBPdescriptions = lbpFeatures.getFeatures()部分的初始赋值)或java足够聪明,只执行一次(如它是我想要的方法)并从那里确定尺寸?

//first approach
        List<double[]> features = lbpFeatures.getFeatures();
        LBPdescriptions = features.toArray(new double[features.size()][features.get(0).length]);

//second approach        
        LBPdescriptions = lbpFeatures.getFeatures().toArray(new double[lbpFeatures.getFeatures().size()][lbpFeatures.getFeatures().get(0).length]);

0 个答案:

没有答案