Arrays.toString()可将一维数组转为带方括号和逗号的字符串,null输入返回"null";多维数组需用Arrays.deepToString()递归处理;使用前须导入java.util.Arrays。

直接调用 Arrays.toString() 方法即可把数组转成可读的字符串形式,它会自动加上方括号、逗号和空格,比手动遍历打印更简洁安全。
基本用法:一维数组
对 int、String、boolean 等基本类型或引用类型的一维数组,传入数组对象就能返回格式化字符串。
- int 数组:
System.out.println(Arrays.toString(new int[]{1, 2, 3}));输出[1, 2, 3] - String 数组:
System.out.println(Arrays.toString(new String[]{"a", "b"}));输出[a, b] - 注意:不能直接传单个元素或 null —— 传 null 会输出
null字符串,不是报错
多维数组要用 Arrays.deepToString
Arrays.toString() 对二维及以上数组只打印“内存地址式”的表示(如 [[I@1b6d3586, [I@4554617c]),看不出实际内容。
- 正确做法是用
Arrays.deepToString():System.out.println(Arrays.deepToString(new int[][]{{1,2}, {3,4}}));输出[[1, 2], [3, 4]] - 它会递归处理每一层,适合嵌套数组、对象数组中含数组等场景
常见误区与注意事项
容易忽略的细节会影响调试效果:
Java项目代码review工具。分析Git变更+完整调用链路上下文,推断业务需求,进行多维度评分和分类汇总,生成完整PRD文档。包含细粒度Java代码审查清单(Null安全、异常处理、Streams、并发、equals/hashCode、资源管理、API设计、性能、MyBatis/ORM、事务边界、SQL/DD...
立即学习“Java免费学习笔记(深入)”;
- 别写成
Arrays.toString(arr).toString()—— 多余调用,Arrays.toString()返回的就是字符串 - 数组变量为 null 时,
Arrays.toString(null)返回字符串"null",不会抛 NullPointerException - 如果想换行或自定义分隔符,需自己遍历拼接,这个方法不支持格式定制
需要导入才能使用
记得加这行 import,否则编译不通过:
import java.util.Arrays;


















