尚硅谷JavaSE基礎(chǔ)
2.5 數(shù)據(jù)類(lèi)型
2.5.1?分類(lèi)
對(duì)于每一種數(shù)據(jù)都定義了明確的具體數(shù)據(jù)類(lèi)型,在內(nèi)存中分配了不同大小的內(nèi)存空間。
2.5.2?整型
- Java各整數(shù)類(lèi)型有固定的表數(shù)范圍和字段長(zhǎng)度,不受具體OS的影響,以保證java程序的可移植性。
- java的整型常量默認(rèn)為 int 型,聲明long型常量須后加‘l’或‘L’
- java程序中變量常聲明為int型,除非不足以表示大數(shù),才使用long
2.5.3?浮點(diǎn)型
- 與整數(shù)類(lèi)型類(lèi)似,Java 浮點(diǎn)類(lèi)型也有固定的表數(shù)范圍和字段長(zhǎng)度,不受具體OS的影響。
- Java 的浮點(diǎn)型常量默認(rèn)為double型,聲明float型常量,須后加‘f’或‘F’。
- 浮點(diǎn)型常量有兩種表示形式:
- 十進(jìn)制數(shù)形式:如:12 ??????512.0f ???????.512 ??(必須有小數(shù)點(diǎn))
- 科學(xué)計(jì)數(shù)法形式:如:12e2 ?????512E2 ????100E-2
- 通常情況下,應(yīng)該使用double型,因?yàn)樗萬(wàn)loat型更精確。
2.5.4?字符型
- char 型數(shù)據(jù)用來(lái)表示通常意義上“字符”(2字節(jié))
- 字符型常量的三種表現(xiàn)形式:
- 字符常量是用單引號(hào)(‘ ’)括起來(lái)的單個(gè)字符,涵蓋世界上所有書(shū)面語(yǔ)的字符。例如:char c1 = 'a'; ??char c2 = '中'; char c3 = ?'9';
- Java中還允許使用轉(zhuǎn)義字符‘\’來(lái)將其后的字符轉(zhuǎn)變?yōu)樘厥庾址统A俊@纾篶har c3 = ‘\n’; ?// '\n'表示換行符
- 直接使用 Unicode 值來(lái)表示字符型常量:‘\uXXXX’。其中,XXXX代表一個(gè)十六進(jìn)制整數(shù)。如:\u000a 表示 \n。
- char類(lèi)型是可以進(jìn)行運(yùn)算的。因?yàn)樗紝?duì)應(yīng)有Unicode碼。
2.5.5?布爾型
- boolean 類(lèi)型適于邏輯運(yùn)算,一般用于程序流程控制:
- if條件控制語(yǔ)句; ?????????????????
- while循環(huán)控制語(yǔ)句;
- do-while循環(huán)控制語(yǔ)句; ?????
- for循環(huán)控制語(yǔ)句;
- boolean類(lèi)型數(shù)據(jù)只允許取值true和false,無(wú)null。
- 不可以0或非 0 的整數(shù)替代false和true,這點(diǎn)和C語(yǔ)言不同。
- Java虛擬機(jī)中沒(méi)有任何供boolean值專(zhuān)用的字節(jié)碼指令,java語(yǔ)言表達(dá)所操作的boolean值,在編譯之后都使用java虛擬機(jī)中的int數(shù)據(jù)類(lèi)型來(lái)代替:true用1表示,false用0表示《java虛擬機(jī)規(guī)范8版》?
2.5.6?數(shù)據(jù)類(lèi)型轉(zhuǎn)換
1、基本數(shù)據(jù)類(lèi)型之間的轉(zhuǎn)換
注意:boolean除外
大小關(guān)系:
①自動(dòng)類(lèi)型轉(zhuǎn)換
規(guī)則:小——>大
語(yǔ)法:double d = 1;
②強(qiáng)轉(zhuǎn)類(lèi)型轉(zhuǎn)換
規(guī)則:大——>小
語(yǔ)法:int i = (int)1.5;
特點(diǎn):
①自動(dòng)提升的原則。表達(dá)式的最終結(jié)果的類(lèi)型為?操作數(shù)中最大的類(lèi)型!
②強(qiáng)轉(zhuǎn)符號(hào)只針對(duì)于最近的操作數(shù)有效,一般使用小括號(hào)提升優(yōu)先級(jí)
2、String類(lèi)型和基本類(lèi)型之間的轉(zhuǎn)換
①基本類(lèi)型——>String類(lèi)型
規(guī)則:直接拼接空字符串即可
語(yǔ)法:
char c = '中';
String s = c+"";
②String類(lèi)型——>基本類(lèi)型
規(guī)則:除char之外,其他的都是通過(guò)?包裝類(lèi)型.parseXX的方法
語(yǔ)法:
除char之外:
String s = "12345";
int i = Integer.parseInt(s);
char:
String s = "asfgh";
char c = s.charAt(1);//提取單個(gè)字符
char[] ch = s.toCharArray();//將整個(gè)字符串轉(zhuǎn)換成字符數(shù)組