8.3 显示数组
可用 println 显示数组,但结果很可能不是你所希望的。例如,下面的代码片段声明了一个数组变量,让它指向一个包含 4 个元素的数组,并试图用 println 显示这个数组的内容:
int[] a = {1, 2, 3, 4};System.out.println(a);
遗憾的是,输出类似于以下这样:
[I@bf3f7e0
方括号表明值是一个数组,I 表示整数,余下的内容是这个数组的地址。要想显示数组的元素,需要分别显示它们:
public static void printArray(int[] a) {System.out.print("{" + a[0]);for (int i = 1; i < a.length; i++) {System.out.print(", " + a[i]);}System.out.println("}");}
给定前面的数组,该方法的输出如下:
{1, 2, 3, 4}
Java 库包含实用工具类 java.util.Arrays,这个类提供了处理数组的方法。其中一个方法是 toString,用于返回数组的字符串表示。你可以像下面这样调用:
System.out.println(Arrays.toString(a));
输出如下:
[1, 2, 3, 4]
与往常一样,必须先导入才能使用 java.util.Arrays。注意,字符串格式与前面的输出格式稍有不同,它使用方括号而不是大括号。但以这种格式输出时无需编写方法 printArray。
