2017-04-26 106 views
-2

字符在java中是不可變的。如果是這樣,有沒有辦法改變,更新或讀取單個字符變量中的多個字符值。提前致謝!數據類型操作Java

String go = "djlfa"; 
Scanner sc = new Scanner(go); 

for(int i = 0; i < go.length(); i++){ 

    Character sym = new Character(sc.next().charAt(i)); 
    System.out.print(sym); 
} 
+0

讀取多個char值?一個字符是一個字符。如果你需要存儲多個字符,你可以創建一個char數組。字符串在技術上也是一個char數組,所以這是一種更簡單的方法來聲明它! – coinbird

+0

'char'有兩個字節的內存,UTF-16編碼,只有一個字節,UTF-8編碼。如果你想存儲多個'char',那麼使用'String';這就是他們所做的! –

+1

請注意,'新角色'的東西是不必要的。 'char sym = sc.next()。charAt(i);'在很大程度上是相同的,只是沒有不必要的對象創建。 –

回答

0

是品格在Java

是一成不變的,沒有改變現有Character實例的值不會再次調用類的構造方法。

如果是這樣,有沒有辦法更改,更新或讀取多個字符值在一個char變量

沒有,這是什麼String s爲對 。 They are also immutable

0

所以你試圖把字符串go到包裝類型Character? 如果是這樣:Character只能存儲一個字符 - 而不是5(djlfa),因爲您要這樣做。

+0

不,我正在努力做到這一點。我想將字符更新爲後綴表達式的中綴。我想測試表達式中讀取的每個字符。 –