Java之Number类
Java之Number類(lèi)
? ? ? ? ? 一般地,當(dāng)需要使用數(shù)字的時(shí)候,我們通常使用內(nèi)置數(shù)據(jù)類(lèi)型,如:byte、int、long、double等,比如:
? ? ? ? ??inta = 5000;
? ? ? ? ??floatb = 13.65;
? ? ? ? ??bytec = 0x4a;
? ? ? ? ??在實(shí)際開(kāi)發(fā)過(guò)程中,我們經(jīng)常會(huì)遇到需要使用對(duì)象,而不是內(nèi)置數(shù)據(jù)類(lèi)型的情形,為了解決這個(gè)問(wèn)題,Java語(yǔ)言為每一個(gè)內(nèi)置數(shù)據(jù)類(lèi)型提供了對(duì)應(yīng)的包裝類(lèi)。
? ? ? ? ??所有的包裝類(lèi)(Integer、Long、Byte、Double、Float、Short)都是抽象類(lèi) ? ? ?Number的子類(lèi)。
? ? ? ? ??Number類(lèi)屬于java.lang包。
? ? ? ? ??Number這個(gè)類(lèi)很少用,他是個(gè)抽象類(lèi),繼承了Object類(lèi),實(shí)現(xiàn)了Serializable<>接口。
? ? ? ? ??裝箱與拆箱
? ? ? ? ??裝箱:這種由編譯器特別支持的包裝稱為裝箱,所以當(dāng)內(nèi)置數(shù)據(jù)類(lèi)型被當(dāng)作對(duì)象使用的時(shí)候,編譯器會(huì)把內(nèi)置類(lèi)型裝箱為包裝類(lèi)。
? ? ? ? ??拆箱:相似的,編譯器也可以把一個(gè)對(duì)象拆箱為內(nèi)置類(lèi)型。
? ? ? ? ??也稱為打包和解包
? ? ? ? ??打包:就是從基本數(shù)據(jù)類(lèi)型——到——封裝類(lèi)。
? ? ? ? ??解包:就是從封裝類(lèi)——到——基本數(shù)據(jù)類(lèi)型。
? ? ? ? ??實(shí)例
public class Test{
?? public staticvoid main(String args[]){
????? Integerx=5;
????? x =x + 10;
?????System.out.println(x);
?? }
}
? ? ? ? ??說(shuō)明:當(dāng)x被賦為整型值時(shí),由于x是一個(gè)對(duì)象,所以編譯器要對(duì)x進(jìn)行裝箱。
? ? ? ? ??然后,為了使x能進(jìn)行加運(yùn)算,所以要對(duì)x進(jìn)行拆箱。
總結(jié)
以上是生活随笔為你收集整理的Java之Number类的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Java的包装类
- 下一篇: Java之Character类