2013-11-25 53 views
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()); 

輸出:不同在Java的println()的行爲

 
initial string is:[[email protected] 
abcd 

回答

12

println()超載至打印字符作爲一個字符串,它是陣列爲什麼第二打印語句正常工作:

public void println(char[] x)

打印字符數組,然後終止該行。此方法表現得好像調用print(char[]),然後println()

參數:
x - 字符數組進行打印。

第1 println()聲明,在另一方面,串接陣列的toString()用另一個字符串。由於陣列不會覆蓋toString(),因此它們默認爲Object's implementation,這就是您所看到的。

+2

+1。這是正確的答案。 –

+0

感謝您的所有明確解釋 – dev