java - 创建 n 个数组

标签 java arrays sorting multidimensional-array

如果可能的话,我想知道如何创建 n 个相同大小的数组。帮助将不胜感激。例如:我想创建 10 个具有相同数量元素的数组,而不必一个一个地创建它们:int[] a = new int[]。希望现在更清楚了。

我在其中一条评论中提出的一个问题是 +-“我如何对数组行进行排序/列排序”。我想通了 - 也许有人会觉得它有用。

int[] sortarr = new int[5]; //create array to transfer data from row to new array

for (int i=0; i<N; i++){
    for (int j=0; j<5; j++){
    sortarr[j] = hands[i][j]; //transfer the data from 2D array's row to sortarr
    }
    Arrays.sort(sortarr); //sort the row's data

    for (int x=0; x<5; x++){ 
    hands[i][x] = sortarr[x]; //transfer the data back to 2D array
    }

}

也许这很明显,但我希望这会帮助那里的人。

最佳答案

您需要创建一个二维数组。

int n;
int size;
int[][] arr = new int[size][n];

可以用嵌套的for循环填充数组;

for(int i =0;i < arr.length; i++) {
    for(int j = 0; i < arr[i].length; j++) {
        arr[i][j] = someValue;
    }
}

或者您可以像这样填充数组:

int[][] arr2 = new int[n][];
for(int i = 0; i < n; i++){
    arr2[i] = new int[size];
}

您可以将二维数组视为数组的数组,例如:

private Card[][] allPlayerHands;
public Card[] getHand(int playerNumber) {
    return allPlayerHands[playerNumber];
}

这是一个关于二维数组的 Stack Overflow 问题:

Initialising a multidimensional array in Java

关于java - 创建 n 个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5097374/

相关文章:

java - Hibernate:获取现有的子标准

arrays - 从数组中删除第 i 个元素,因此时间复杂度不依赖于数组大小

c++ - 传递 int 数组时的行为变化

mysql - mysql join的结果按第三个表的平均值排序?

algorithm - 基于参数和约束匹配数据

java - 获取对 Facebook 页面点赞的人的姓名

java - 缺少对 HttpClient 的依赖

java - 编译错误 - 用枚举切换

c# - C# 中的计算数组值 - 响应式(Reactive)编程

java - java.util.stream.Stream<T>.sorted() 的大 O 复杂度