點擊查看:2015計算機等級考試二級Java入門教程章節匯總
點擊查看:2015計算機等級考試二級Java入門教程第二章匯總
2.8 存儲字符
字符類型(char)的變量存儲一個字符。在內存中每個字符占1 6位,兩個字節,這是因為Java中的所有字符都用Unicode編碼存儲。你若要聲明和初始化一個字符變量myCharacter,可以使用下列語句:
char mycharacter=x
這條語句用字母"x"的Unicade字符初始化字符型變量。你必須在語句中用單引號將這個字符括起來"x"這使得編譯器能夠區分字符"x"和變量名x.
字符換碼序列
如果你正在使用ASCII編碼的文字編輯器,就只能直接地輸入在ASCII碼中定義的字符,但你可以用一個換碼序列(escape sequence,也譯作轉義序列)指定一個十六進制數值來表示一個Unicvde字符。換碼序列是對指定字符含義的簡單轉換,它經常通過編碼來實現。反斜杠表示換碼序列的開始,并且可以通過在4個十六進制數字之前加上\u來為Unicycle字符建立換碼序列。因為字母X的Urucode編碼是Qx0058(低字節與ASCII碼相同),所以你可以用語句聲明、定義myCharater變量
char mycharacter=\u0058
你可以用這種方法輸入任何Unicode字符,盡管對于輸入大量字符來說,這并不是一種對用戶很友好的方法。
你可以訪問Internet(http://www.unicode.org/)站點獲取有關Unicode字符集更詳細的信息。
正像你已經看到的,我們可以寫一個括在雙引號之間的字符串〔在第4章中,我們將看到字符串文字).由于反斜杠在字符串中表示換碼序列的開始,所以你必須在文本字符串中,使用一個換碼序列來指定反斜杠字符本身,例如,\\.由于單引號被用來定界單個字符,所以我們使用雙引號定界字符串,并用換碼序列指定它們本身,即用換碼序列\'定義單引號;用\''定義雙引號。例如,要輸出
It's freezing in here ,he said coldly
你可以編寫:
system.out.println(\It\s freezing in here\,he said coldly);
事實上,在一個字符串中,并不是一定需要使用換碼序列指定單引號,然而,在你把它作為一個單獨的字符說明時,就需要使用換碼序列。當然,字符串中若需要指定雙引號,就必須使用換碼序列,否則它將被解釋為字符串的結束。
下面是另外一些你可以用來定義控制字符的換碼字符:
字符運算
你可以對char類型的變量實施算術運算。mycharacter存儲著字符"X",以下語句的運算結果將使myCharacter的內容變為"Y".
myCharactor+=1 ; //Increment to next character
你可以使用遞增運算符++增加存儲在myCharacter中的內容,只要寫成:
++myCharacter; //Increment to next character
你可以在算術表達式中使用char類型的變量,在進行運算時,它們的值將被轉換為int類型。你并沒有必要做太多的工作,只要你按如下所示的形式書寫即可。
char aChar=0
char bChar=\u0028
aChar=(char)(2*bChar+8);
這將使aChar保存'X'的代碼0x0058
相關推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |