一、print()和println()
在Java中,可以使用print()方法和println()方法来打印数组的元素。这两个方法都是输出数据到控制台的语句,它们的输出效果有所不同。
print()方法会输出数组的所有元素,但是不会自动换行。如果需要分行打印,需要手动添加换行符,比如用“\n”或“\r\n”。
int[] arr = {1, 2, 3, 4, 5};
for(int i = 0; i < arr.length; i++){
System.out.print(arr[i] + " ");
}
System.out.print("\n");//或者System.out.print("\r\n");
输出结果为:1 2 3 4 5(换行符)
println()方法会在输出数组元素后自动换行。
int[] arr = {1, 2, 3, 4, 5};
for(int i = 0; i < arr.length; i++){
System.out.println(arr[i]);
}
输出结果为:
1
2
3
4
5
二、Arrays.toString()
Java的标准库中提供了一个Arrays类,其中的toString()方法可以将数组转化为字符串,方便输出数组内容。
int[] arr = {1, 2, 3, 4, 5};
System.out.println(Arrays.toString(arr));
输出结果为:[1, 2, 3, 4, 5]
如果是多维数组,也可以使用Arrays.deepToString()方法来转化为字符串。
int[][] arr = {{1, 2}, {3, 4}};
System.out.println(Arrays.deepToString(arr));
输出结果为:[[1, 2], [3, 4]]
三、Stream流操作
Java 8引入了Stream API,可以方便的对数组进行各种操作,包括遍历、过滤、映射等。
使用Arrays.stream()方法将数组转化为流,然后进行操作。
int[] arr = {1, 2, 3, 4, 5};
Arrays.stream(arr).forEach(System.out::println);
输出结果和使用println()方法相同:
1
2
3
4
5
对数组进行过滤:
int[] arr = {1, 2, 3, 4, 5};
Arrays.stream(arr).filter(x -> x % 2 == 0).forEach(System.out::println);
输出结果为:
2
4
对数组进行映射:
int[] arr = {1, 2, 3, 4, 5};
Arrays.stream(arr).map(x -> x * x).forEach(System.out::println);
输出结果为:
1
4
9
16
25
四、for-each循环
使用for-each循环可以方便的遍历数组,不需要使用下标来访问。
int[] arr = {1, 2, 3, 4, 5};
for(int num : arr){
System.out.print(num + " ");
}
System.out.println();
输出结果与使用print()方法相同。
五、Arrays.asList()
使用Arrays.asList()方法可以将数组转化为ArrayList对象,方便进行诸如添加和删除等操作。
Integer[] arr = {1, 2, 3, 4, 5};
List<Integer> list = Arrays.asList(arr);
list.add(6);//会抛出UnsupportedOperationException
注意,Arrays.asList()返回的是固定大小的列表,不能进行添加和删除操作。如果需要进行添加和删除等操作,需要创建一个新的ArrayList对象。
Integer[] arr = {1, 2, 3, 4, 5};
List<Integer> list = new ArrayList(Arrays.asList(arr));
list.add(6);//可以正常添加
六、总结
以上就是Java中打印数组内容的几种方法。使用print()和println()方法最为简单方便,Arrays.toString()和Arrays.asList()适用于需要对数组进行操作的情况,使用Stream API可以进行更加复杂的操作。