Java中如何正确打印int数组?直接打印数组输出异常如何解决?
Java 中数组属于引用类型,直接调用 System.out.println(nums) 打印数组时,实际调用的是继承自 Object 类的默认 toString 方法,输出的是数组对象的内存地址标识(格式类似[I@xxxxxx),并非数组存储的元素内容。
正确打印一维int数组的两种常用方案
方案1:使用JDK自带的Arrays工具类(推荐,代码最简)
- 在代码顶部导入工具类:
import java.util.Arrays;
- 将原打印语句替换为:
System.out.println(Arrays.toString(nums));
打印效果示例:[6, 3, 8, 89, 34, 89, 132, 76, 34, 89, 11, 9, 19]
方案2:手动遍历打印(适合自定义输出格式)
不需要额外导包,通过循环逐个输出元素,示例代码:
// 普通for循环遍历 for(int i = 0; i < nums.length; i++) { System.out.print(nums[i] + " "); } System.out.println(); // 输出完成后换行 // 也可以用增强for循环简化写法 for(int num : nums) { System.out.print(num + " "); } System.out.println();
如果后续需要打印多维数组,可以使用Arrays.deepToString()方法实现。
内容的提问来源于stack exchange,提问作者coder876
相关产品推荐
相关产品推荐

