- 循环嵌套
如果想要打印List集合中的每个数组而不是数组的元素,可以使用Arrays.toString()方法来将数组转换为字符串。
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<int[]> list = new ArrayList<>();
list.add(new int[]{1, 2, 3});
list.add(new int[]{4, 5, 6});
list.add(new int[]{7, 8, 9});
// 打印List集合中的每个数组
for (int[] array : list) {
System.out.println(Arrays.toString(array));
}
}
}
输出结果如下:
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]
- 直接打印
如果想以‘[[1, 2, 3],[4, 5, 6],[7, 8, 9]]’的格式直接输出二维数组,可以使用Arrays.deepToString()方法来实现。
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<int[]> list = new ArrayList<>();
list.add(new int[]{1, 2, 3});
list.add(new int[]{4, 5, 6});
list.add(new int[]{7, 8, 9});
// 直接输出二维数组
System.out.println(Arrays.deepToString(list.toArray()));
}
}
在上述示例中,使用了Arrays.deepToString()方法将整个List集合转换为字符串,其中二维数组的格式被保留。
运行上述示例代码,将输出以下内容:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
对于二维数组,list.toArray()方法将返回一个类型为Object[]的一维数组,其中每个元素都是二维数组下对应行的引用。此时直接输出将会得到这个一维数组的地址。
[Ljava.lang.Object;@682a0b20
再对这个一维数组使用’toString’将会打印list[0],list[1],list[2](每一列)的地址而不是‘[[1, 2, 3],[4, 5, 6],[7, 8, 9]]’。
[[I@1540e19d, [I@677327b6, [I@14ae5a5]