有途教育

Char型變量中能不能存儲一個中文漢字

吳佳琪 2023-05-09 17:17:53

char類型可以存儲一個中文漢字。因為Java中使用的編碼是Unicode(不選擇任何特定的編碼,直接使用字符在字符集中的編號,這是統(tǒng)一的唯一方法),一個char類型占2個字節(jié)(16比特),所以放一個中文是沒問題的。

Char型變量中能不能存儲一個中文漢字

使用Unicode意味著字符在JVM內(nèi)部和外部有不同的表現(xiàn)形式,在JVM內(nèi)部都是Unicode,當這個字符被從JVM內(nèi)部轉(zhuǎn)移到外部時(例如存入文件系統(tǒng)中),需要進行編碼轉(zhuǎn)換。

所以Java中有字節(jié)流和字符流,以及在字符流和字節(jié)流之間進行轉(zhuǎn)換的轉(zhuǎn)換流,如InputStreamReader和OutputStreamReader,這兩個類是字節(jié)流和字符流之間的適配器類,承擔了編碼轉(zhuǎn)換的任務(wù);對于C程序員來說,要完成這樣的編碼轉(zhuǎn)換恐怕要依賴于union(聯(lián)合體/共用體)共享內(nèi)存的特征來實現(xiàn)了。

熱門推薦

最新文章