字符数组的ss.toString()和new String(ss)的问题

int[] a={0, 1, 1, 2, 8, 4, 9};

System.out.println(String.valueOf(a));-----类型+句柄
System.out.println(a.toString());----------类型+句柄
System.out.println(Arrays.toString(a));----[0, 1, 1, 2, 8, 4, 9]
System.out.println(new String(a));------参数错误


char[] ss={'1','2','3','4','5'};
System.out.println(String.valueOf(ss));---12345的字符串
System.out.println(new String(ss));-------12345的字符串
System.out.println(ss.toString());--------类型+句柄
System.out.println(Arrays.toString(ss));---[1, 2, 3, 4, 5]
综上,
对于char[]和int[]想要获得[ , , ]形式,使用Arrays.toString()即可
想要获得字符串类型,char[]可选择 new String( ),或者String.valueOf()
int[] 只能使用for循环了。

String.valueOf()本质也是toString,只不过可接受Null,参数有各种基本类型及 char数组,返回字符串的表现形式

原文地址:https://www.cnblogs.com/10zhang/p/8805325.html