Java-char類型詳解

char是Java中的保留字,與別的語言不同的是,char在Java中是16位的,因爲Java用的是Unicode。不過8位的ASCII碼包含在Unicode中,是從0~127的。

 

但是English,Spanish,German, French根本不需要這麼表示,所以它們其實採用ASCII碼會更高效。這中間就存在一個權衡問題。

因爲char是16位的,採取的Unicode的編碼方式,所以char就有以下的初始化方式:

//字符,可以是漢字,因爲是Unicode編碼

char c = 'c'; 

//可以用整數賦值

char c = 十進制數,八進制數,十六進制數等等;

//用字符的編碼值來初始化

char c = '\u數字';

關於char佔幾個字節的問題

1.“字節”是byte,“位”是bit ;

2.1 byte = 8 bit ;

char 在Java中是2個字節。Java採用unicode,2個字節(16位)來表示一個字符。

char類型賦值

char a = 'a';  //任意單個字符,加單引號。

char a = '中';//任意單箇中文字,加單引號。

char a = 111;//整數。0~65535。十進制、八進制、十六進制均可。輸出字符編碼表中對應的字符。

注:char只能放單個字符。 

char運算

char類型是可以運算的因爲char在ASCII等字符編碼表中有對應的數值。

在Java中,對char類型字符運行時,直接當做ASCII表對應的整數來對待。

示例:

char m = 'a';

char m = 'a' + 'b';//char類型相加,提升爲int類型,輸出對應的字符。

int m = 'a' + 'b';//結果是195。//195沒有超出int範圍,直接輸出195。

char m = 'a' + b;//會報錯。//因爲b是一個賦值的變量。

char m = 197;//輸出字符編碼表中對應的字符。

char m = '197';//會報錯。//因爲有單引號,表示是字符,只允許放單個字符。

char m = 'a' + 1;//輸出結果是b。//提升爲int,計算結果98對應的字符是b。

總結

用單引號''標識,只能放單個字符。

char + char,char + int——類型均提升爲int,附值char變量後,輸出字符編碼表中對應的字符。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章