String s="StackOverflow is heaven";
char []c=new Char[100];
c=s.toCharArray();
System.out.println(c);
System.out.println("Output="+c);
Output is :- StackOverflow is heaven
Output=[C@15db9742
为什么B / W输出有差异?请解释一下
答案 0 :(得分:4)
案例1:
overloaded println采用char[]
方法在内部处理数组并打印String。请注意,println()
没有任何其他类型的基本数组的重载方法。
案例2:
您正在使用String连接数组,因此在进行println处理之前,步骤1本身将调用您的char数组toString()
并将其附加到字符串,并将最终输出打印为String。
因此,如果扩展第二个语句,处理看起来像
System.out.println("Output="+c.toString());
System.out.println("Output="+ "[C@15db9742");
System.out.println("Output=[C@15db9742");