填充多维数组动态

BL0ss0m

我想创建一个具有这样结构的数组

double[][] x1 = {{3.17, 26.348}, {3.65, 24.198}, {3.28, 25.085}, {3.37, 22.461},
        {2.57, 23.740}, {3.60, 24.786}, {3.50, 23.374}, {2.98, 23.725},
        {2.54, 23.227}, {3.41, 26.920}};

我的问题是我不知道数组会有多大(有多少值对)。所以我需要动态填充它。我想从存储值的两个数组列表中创建数组

像这样的东西,但对于不同的尺寸是动态的

 double[][] xtest = { {  ACDregList.get(0),  ALregList.get(0) },
            { ACDregList.get(1),  ALregList.get(1) },
            {  ACDregList.get(2),  ALregList.get(2) },
            {  ACDregList.get(3), ALregList.get(3) },
            {  ACDregList.get(4),  ALregList.get(4) },
            {  ACDregList.get(5),  ALregList.get(5) },
            {  ACDregList.get(6),  ALregList.get(6) },
            {  ACDregList.get(7),  ALregList.get(7) },
            {  ACDregList.get(8),  ALregList.get(8) },
            {  ACDregList.get(9),  ALregList.get(9) }};

也许你们中的一些人可以帮助我。

谢谢!

我已经尝试过使用两个 for 循环,但它没有按照我期望的方式填充数组。

恶魔之心

我同意评论,使用 ArrayList 或 List 接口:List<List<Double>> doublesList = new ArrayList<>();这可以动态增长。这里有几个例子:

// A List of Lists. Both can grow dynamically.
List<List<Double>> doublesList = new ArrayList<>();
List<Double> dList = Arrays.asList(3.17, 26.348);
doublesList.add(dList);
    
dList = Arrays.asList(3.65, 24.198, 44.657);
doublesList.add(dList);
    
// and so on...

//Display the list contents
for (List<Double> dl : doublesList) {
    System.out.println(dl);
}
    

或者你可以这样做:

// A List of double[] arrays. The list can grow Dynamically but
// the double[] arrays within each List element are fixed length.
List<double[]> dpList = new ArrayList<>();
double[] dbl = {3.17, 26.348};
dpList.add(dbl);
    
dbl = new double[] {3.65, 24.198, 44.657};
dpList.add(dbl);
    
System.out.println();

//Display the list contents
for (double[] dl : dpList) {
    System.out.println(Arrays.toString(dl));
}

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章