我對Java處理轉換的方式有點困惑。java - 如果數組有int值,print()不會輸出char數組?
我有字符數組包括0(不是 '0')
char[] bar = {0, 'a', 'b'};
System.out.println(String.valueOf(bar));
當發生這種情況的println方法不輸出任何東西。但是,當我將零視爲字符時:
char[] bar = {'0', 'a', 'b'};
System.out.println(String.valueOf(bar));
然後它按預期輸出「0ab」。
我的理解是如果聲明基本類型的陣列中包含空值:
炭[]富=新的char [10];
在Java中,這些空單元格的默認值爲0,所以我認爲可以在char數組中使用0,但似乎不是。任何人都可以解釋爲什麼打印方法甚至不輸出'a'和'b'?
這是確定在你贏得意義上的字符數組有0」不要被捕。但爲什麼你會期望輸出是字符「0」?如果酒吧的第一個元素是48,那麼就會得到這個結果。0對應於nul字符,也許您的顯示設備在獲取該字符時會做一些「有趣」的事情。 – 2010-07-10 02:08:36
當我在Eclipse中運行這個時,我得到'ab',所以我打賭@GregS是正確的。 – 2010-07-10 02:12:49
嗯我也使用Eclipse .. – 2010-07-10 02:28:50