【考點】JAVA中的char類型
寫在前面:
本周,在我們同學(xué)的刷題群里,一位同學(xué)上傳了一道關(guān)于char的題,引起的不少同學(xué)的熱議。熱議的同時,我們也發(fā)現(xiàn)近乎一半的同學(xué)對char的基礎(chǔ)知識一知半解,今天我們給大家一個淺顯易懂的解釋,趕緊來看看吧!
01-JAVA中,char占2字節(jié),16位
?可在存放漢字
?02-char賦值
char a='a'; ?//任意單個字符,加單引號。
char a='中';//任意單個中文字,加單引號。
char a=111;//整數(shù)。0~65535。十進制、八進制、十六進制均可。輸出字符編碼表中對應(yīng)的字符。
注:只能放單個字符。?
?03-char運算
char類型是可以運算的因為char在ASCII等字符編碼表中有對應(yīng)的數(shù)值。
在JAVA中,對char類型字符運行時,直接當做ASCII表對應(yīng)的整數(shù)來對待。
示例:
char m='a'; ——a。
char m='a'+'b'; ——?。? //char類型相加,提升為int類型,輸出對應(yīng)的字符。注,在CMD.exe用輸出結(jié)果是問題?,不同的編碼輸出顯示不一樣。Eclipse中須改成UTF-8。
int m='a'+'b'; ——195。//195沒有超出int范圍,直接輸出195。
char m='a'+b; ——報錯。//因為b是一個賦值的變量。
char m=197; ——?。//輸出字符編碼表中對應(yīng)的字符。
char m='197; ——報錯。//因為有單引號,表示是字符,只允許放單個字符。
char m='a'+1; ——b。//提升為int,計算結(jié)果98對應(yīng)的字符是b。
char m='中'+'國'; ——42282。
char m='中'+'國'+'國'+'國'; ——報錯。int轉(zhuǎn)char有損失。因為結(jié)果已經(jīng)超出char類型的范圍。
int m='中'+'國'+'國'+'國'; ——86820
char m='中'+1; ——丮。//1是int,結(jié)果提升為int,輸出對應(yīng)的字符。
char m='中'+"國"; ——報錯。String無法轉(zhuǎn)換為char。
System.out.println('中'+"國"); ——中國。//沒有變量附值的過程。String與任何字符用“+”相連,轉(zhuǎn)換為String。
來自于CSDN博主「ibelieve618」
原文:https://blog.csdn.net/ibelieve618/java/article/details/54948729
今日學(xué)習
如果你在Java學(xué)習上遇到困難
希望有專業(yè)的老師指導(dǎo)
幫你高效完成咨詢/簡歷/項目/算法/專業(yè)課
拿到心儀的offer,沖刺Java一二線班!
具體詳情查看下方課程
