如何在Java中使用Arrays.toString输出数组

Arrays.toString()用于将一维数组转为可读字符串,需导入java.util.Arrays;对多维数组应使用Arrays.deepToString()以正确显示元素。

在Java中,Arrays.toString() 是一个非常方便的方法,用于将数组的内容转换为可读的字符串形式。直接使用 System.out.println() 输出数组引用时,只会打印出内存地址,无法看到实际元素。而 Arrays.toString() 能清晰地展示数组中的每个值。

导入Arrays类

Java.util.Arrays 是一个工具类,提供了多种操作数组的静态方法。toString() 方法就定义在这里。虽然 java.util.Arrays 在使用时通常需要显式导入,但在很多开发环境中(如IDE)会自动导入。

确保你在文件顶部添加以下导入语句:
import java.util.Arrays;

基本用法:输出一维数组

对于常见的基本类型数组(如 int[]、double[]、boolean[] 等),可以直接调用 Arrays.toString()

示例:

int[] numbers = {1, 2, 3, 4, 5};
System.out.println(Arrays.toString(numbers));
输出结果为:
[1, 2, 3, 4, 5]

其他类型也类似:

d

ouble[] values = {1.1, 2.2, 3.3}; System.out.println(Arrays.toString(values)); // [1.1, 2.2, 3.3] boolean[] flags = {true, false, true}; System.out.println(Arrays.toString(flags)); // [true, false, true]

输出字符串数组

String 数组也可以直接使用该方法:

String[] names = {"Alice", "Bob", "Charlie"};
System.out.println(Arrays.toString(names));
输出:
[Alice, Bob, Charlie]

注意:多维数组需使用 toStringDeep()

如果尝试对二维或更高维数组使用 Arrays.toString(),结果可能不是你期望的:

int[][] matrix = {{1, 2}, {3, 4}};
System.out.println(Arrays.toString(matrix)); // 输出类似 [[I@xxx, [I@xxx]

这是因为它只转换了每一行的引用,而不是深层内容。

正确做法是使用 Arrays.deepToString()

System.out.println(Arrays.deepToString(matrix)); // [[1, 2], [3, 4]]
基本上就这些。只要记住不同类型数组选择合适的方法,输出就会清晰明了。