在 Java 中,我们经常需要打印数组的内容以便进行调试或输出结果。

下面介绍几种常见的打印数组的方法。

 方法1:使用for循环遍历数组并打印每个元素。

如果是多维数组的话,使用多层 for 循环嵌套就可以打印了。

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

打印输出结果:

1 2 3 4 5
  • 1.

方法2:使用增强的for循环(也称为for-each循环)遍历数组并打印每个元素。

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

打印输出结果:

1 2 3 4 5
  • 1.

方法3:使用Arrays类的toString()方法打印整个数组。

int[] array = {1, 2, 3, 4, 5};
System.out.print(Arrays.toString(array));
  • 1.
  • 2.

 打印输出结果:

[1, 2, 3, 4, 5]
  • 1.

打印二维数组

对于多维数组,由于toString()方法不能正确处理,打印出来的是地址值,我们需要使用deepToString()方法。这个方法能够递归遍历多维数组,将其转化为字符串形式。

int[][] array = {
  {1, 2, 3, 4},
  {5, 6, 7, 8},
  {9, 10, 11, 12}
};
System.out.println(Arrays.toString(array));
System.out.println(Arrays.deepToString(array));
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.

打印输出结果:

[[I@4554617c, [I@74a14482, [I@1540e19d]
[[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]]
  • 1.
  • 2.

方法4:使用Java 8的Stream API和lambda表达式来打印数组。

int[] array = {1, 2, 3, 4, 5};
Arrays.stream(array).forEach(num -> System.out.print(num + " "));
  • 1.
  • 2.

打印输出结果:

1 2 3 4 5
  • 1.