繁体   English   中英

如何将 2d 数组拆分为 2 个单独的 1d arrays

[英]How to split a 2d array into 2 seperate 1d arrays

我想使用第一个数组中的第一列和第二个数组中的第二列从二维数组创建 2 个单独的一维 arrays。

double[][] 2dArray = {{1,2,3,4,5,6},{1,2,3,4,5,6}}

二维数组只是嵌套在数组中的一组 arrays。 这意味着每个数组索引都是一个项目数组。 因此,您可以轻松地将索引的值提取到它自己的数组中。

double[][] my2dArray = {{1,2,3,4,5,6},{1,2,3,4,5,6}};
        
double[] myFirstArray = my2dArray[0];
double[] mySecondArray = my2dArray[1];

这会给你 2 arrays,每个包含{1, 2, 3, 4, 5, 6}

它可能是这样的(阅读评论):

double[][] my2dArray = {{1, 2, 3, 4, 5, 6}, {7, 8, 9, 10, 11, 12}};
            
double[] myFirstArray = new double[my2dArray.length];
double[] mySecondArray = new double[my2dArray.length];
    
int idxCnt = 0;  // new arrays index incrementer.
// Get each array in the matrix one at a time:
for (double[] ary : my2dArray) {
    myFirstArray[idxCnt] = ary[0];  // Get the first column value from current inner Array.
    mySecondArray[idxCnt] = ary[1]; // Get the second column value from current inner Array.
    idxCnt++;                       // increment index for new Arrays.
    // continue loop to get next array from matrix.
}
    
System.out.println("myFirstArray[] contains:  -> " + Arrays.toString(myFirstArray));
System.out.println("mySecondArray[] contains: -> " + Arrays.toString(mySecondArray));

如果运行,控制台 Window 应显示:

myFirstArray[] contains:  -> [1.0, 7.0]
mySecondArray[] contains: -> [2.0, 8.0]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM