java - 如何使用 foreach 循环以最简单的方式打印二维数组?

标签 java arrays loops foreach 2d

我想知道打印二维数组的最简单方法是什么? 我知道我们可以像下面的代码一样打印一维数组。

int[ ] numbers = {2, 3, 5, 7};    
for (int print: numbers) {
   System.out.println(print); 
}

我尝试打印下面的代码,当然它没有用。

int[ ][ ] numbers= { {1, 2, 3}, {4, 5, 6} }; 
for (int print: numbers) {
       System.out.println(print); 
    }

我知道我可以像下面的代码一样使用嵌套循环进行打印,但我想知道我是否可以像一维数组一样使用 foreach 循环。谢谢

 int[ ][ ] numbers= { {1, 2, 3}, {4, 5, 6} }; 
    for (int i = 0; i < numbers.length; i++) {
            for (int j = 0; j < numbers[i].length; j++) {
                System.out.print(numbers[i][j] + " ");
            }
            System.out.println();
        }
}

最佳答案

在二维数组中,第一个循环中的每个元素都是一个一维数组,在第二个循环中每个元素本身就是一个数字:

int[][] array2d = {{1, 2, 3}, {4, 5, 6}};
for (int[] array : array2d) {
    for (int element : array) {
        System.out.print(element + " ");
    }
    System.out.println();
}

实际上,使用 Arrays::toString 库方法有更好的方法:

int[][] numbers = {{1, 2, 3}, {4, 5, 6}};
for (int[] array : numbers) {
    System.out.println(Arrays.toString(array));
}

关于java - 如何使用 foreach 循环以最简单的方式打印二维数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49959758/

相关文章:

java - 在java中实现类似的接口(interface)

java - 我应该使用哪个 InitialContextFactory?

php - 将数组中的所有数字值转换为整数类型,否则将非数字值保留为字符串

javascript - 在js中查找数组中重复项的索引

javascript - 如何将对象插入到对象内部的数组中?

jQuery - 循环标签/输入对并添加唯一 ID

python - 我如何打破2个循环? (Python)

java - 如何在 Eclipse 中使用 MiG Layout?

php - 如果在循环中使用 MySQLi 准备语句,我什么时候调用 bind_param?

java - while (n-- != 0){} 在此代码中做了什么?