char的初始化
char是Java中的保留字,與別的語言不同的是,char在Java中是16位的,因?yàn)镴ava用的是Unicode。不過8位的ASCII碼包含在Unicode中,是從0~127的。
但是English,Spanish,German,French根本不需要這么表示,所以它們其實(shí)采用ASCII碼會(huì)更高效。這中間就存在一個(gè)權(quán)衡問題。
因?yàn)閏har是16位的,采取的Unicode的編碼方式,所以char就有以下的初始化方式:
//字符,可以是漢字,因?yàn)槭荱nicode編碼
charc='c';
//可以用整數(shù)賦值
charc=十進(jìn)制數(shù),八進(jìn)制數(shù),十六進(jìn)制數(shù)等等;
//用字符的編碼值來初始化
charc='u數(shù)字'
關(guān)于char占幾個(gè)字節(jié)的問題
1.“字節(jié)”是byte,“位”是bit;
2.1byte=8bit;
char在Java中是2個(gè)字節(jié)。Java采用unicode,2個(gè)字節(jié)(16位)來表示一個(gè)字符。
char類型賦值
chara='a';//任意單個(gè)字符,加單引號(hào)。
chara='中';//任意單個(gè)中文字,加單引號(hào)。
chara=111;//整數(shù)。0~65535。十進(jìn)制、八進(jìn)制、十六進(jìn)制均可。輸出字符編碼表中對(duì)應(yīng)的字符。
注:char只能放單個(gè)字符。
char運(yùn)算
char類型是可以運(yùn)算的因?yàn)閏har在ASCII等字符編碼表中有對(duì)應(yīng)的數(shù)值。
在Java中,對(duì)char類型字符運(yùn)行時(shí),直接當(dāng)做ASCII表對(duì)應(yīng)的整數(shù)來對(duì)待。
示例:
charm='a';
charm='a'+'b';//char類型相加,提升為int類型,輸出對(duì)應(yīng)的字符。
intm='a'+'b';——結(jié)果是195。//195沒有超出int范圍,直接輸出195。
charm='a'+b;——會(huì)報(bào)錯(cuò)。//因?yàn)閎是一個(gè)賦值的變量。
charm=197;//輸出字符編碼表中對(duì)應(yīng)的字符。
charm='197';——會(huì)報(bào)錯(cuò)。//因?yàn)橛袉我?hào),表示是字符,只允許放單個(gè)字符。
charm='a'+1;——輸出結(jié)果是b。//提升為int,計(jì)算結(jié)果98對(duì)應(yīng)的字符是b。
總結(jié)
用單引號(hào)''標(biāo)識(shí),只能放單個(gè)字符。
char+char,char+int——類型均提升為int,附值char變量后,輸出字符編碼表中對(duì)應(yīng)的字符。
以上就是長沙達(dá)內(nèi)教育java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“Java char的包裝類型詳解”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問,請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。
Java技術(shù)相關(guān)教程
Java包裝類:http://www.bjpowernode.com/tutorial_java_advance/630.html