Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何填充二维数组?_Java_Arrays - Fatal编程技术网

Java 如何填充二维数组?

Java 如何填充二维数组?,java,arrays,Java,Arrays,我有N个数字,N=10,如何将其填充到二维数组中,使其看起来像这样: {{1 2 3 4 5 } {6 7 8 9 10}} int[][] nums = {{1, 2, 3, 4, 5}, {6, 7, 8, 9, 10}}; 以下是我目前掌握的情况: int[][] a = new int[2][5] for(int i=0; i<2; i++) for(int j=0; j<5; j++){ a[i][j] = ? } } 或者这根本不可能?您可以将数字保

我有N个数字,N=10,如何将其填充到二维数组中,使其看起来像这样:

{{1 2 3 4 5 }
 {6 7 8 9 10}}
int[][] nums = {{1, 2, 3, 4, 5}, {6, 7, 8, 9, 10}};
以下是我目前掌握的情况:

int[][] a = new int[2][5]
for(int i=0; i<2; i++)
  for(int j=0; j<5; j++){
    a[i][j] = ?
 }
}

或者这根本不可能?

您可以将数字保留在变量中,并在每次迭代后增加:

int i = 1;

for (...) {
    for (...) {
        a[i][j] = i++; // the ++ operator will increase it by one
    }
}
考虑到你的第一个数组,a我想你想要这样的东西

public static void main(String[] args) {
  int[][] a = new int[2][5];
  for (int i = 0; i < a.length; i++) {
    for (int j = 0; j < a[i].length; j++) {
      a[i][j] = j + (a[i].length * i) + 1;
    }
  }
  System.out.println(Arrays.deepToString(a));
}
您可以增加var并填充数组:
我不知道这些值是在编译时已知的,还是在运行时需要动态的。原始问题中的示例和上面的答案似乎表明,您可能只是尝试使用编译时已知的值初始化数组,如果是这种情况,您可以执行以下操作:

{{1 2 3 4 5 }
 {6 7 8 9 10}}
int[][] nums = {{1, 2, 3, 4, 5}, {6, 7, 8, 9, 10}};

这似乎更一般。但是为什么它工作得这么好呢?你必须更加努力地工作,练习,练习!没那么难。
int[][] a = new int[2][5];
int x = 1;
for(int i=0; i<2; i++) {
  for(int j=0; j<5; j++){
      a[i][j] = x++;
  }
}
int[][] nums = {{1, 2, 3, 4, 5}, {6, 7, 8, 9, 10}};