Java中println()的不同行为

6
//take the input from user
text = br.readLine();

//convert to char array
char ary[] = text.toCharArray();


System.out.println("initial string is:" + text.toCharArray());

System.out.println(text.toCharArray());

输出:

初始字符串是:[C@5603f377
abcd
1个回答

12

println() 被重载为将字符数组作为字符串打印,这就是第二个打印语句能够正确工作的原因:

public void println(char[] x)

打印字符数组并结束该行。此方法的行为就像调用print(char[])println()

参数:
x - 要打印的字符数组。

然而,第一个 println() 语句将数组的 toString() 与另一个字符串连接起来。由于数组没有重写 toString(),它们默认使用Object 的实现,这就是你看到的结果。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接