大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學(xué)習(xí)攻略 大家經(jīng)常復(fù)習(xí)的一些Java基礎(chǔ)試題及答案

大家經(jīng)常復(fù)習(xí)的一些Java基礎(chǔ)試題及答案

更新時間:2020-07-14 14:34:17 來源:動力節(jié)點 瀏覽2471次

八種基本數(shù)據(jù)類型的大小,以及他們的封裝類。

(1)八種基本數(shù)據(jù)類型和封裝類

大家經(jīng)常復(fù)習(xí)的一些Java基礎(chǔ)試題及答案

(2)自動裝箱和自動拆箱

什么是自動裝箱拆箱

基本數(shù)據(jù)類型的自動裝箱(autoboxing)、拆箱(unboxing)是自J2SE 5.0開始提供的功能。

一般我們要創(chuàng)建一個類的對象實例的時候,我們會這樣:

Class a=new Class(parameter);

當我們創(chuàng)建一個Integer對象時,卻可以這樣:

Integer i=100;(注意:不是int i=100;)

實際上,執(zhí)行上面那句代碼的時候,系統(tǒng)為我們執(zhí)行了:Integer i=Integer.valueOf(100);

此即基本數(shù)據(jù)類型的自動裝箱功能。

基本數(shù)據(jù)類型與對象的差別

基本數(shù)據(jù)類型不是對象,也就是使用int、double、boolean等定義的變量、常量。

基本數(shù)據(jù)類型沒有可調(diào)用的方法。

eg:int t=1;t.后面是沒有方法滴。

Integer t=1;t.后面就有很多方法可讓你調(diào)用了。

什么時候自動裝箱

例如:Integer i=100;

相當于編譯器自動為您作以下的語法編譯:Integer i=Integer.valueOf(100);

什么時候自動拆箱

自動拆箱(unboxing),也就是將對象中的基本數(shù)據(jù)從對象中自動取出。如下可實現(xiàn)自動拆箱:

Integer i=10;//裝箱

int t=i;//拆箱,實際上執(zhí)行了int t=i.intValue();

在進行運算時,也可以進行拆箱。

Integer i=10;

System.out.println(i++);

Integer的自動裝箱

//在-128~127 之外的數(shù)
?Integer i1 =200;??
?Integer i2 =200;? ? ? ? ??
?System.out.println("i1==i2: "+(i1==i2));? ? ? ? ? ? ? ? ? ?
?// 在-128~127 之內(nèi)的數(shù)
?Integer i3 =100;??
?Integer i4 =100;??
?System.out.println("i3==i4: "+(i3==i4));

輸出的結(jié)果是:
i1==i2: falsei3==i4: true

說明:

equals() 比較的是兩個對象的值(內(nèi)容)是否相同。

"==" 比較的是兩個對象的引用(內(nèi)存地址)是否相同,也用來比較兩個基本數(shù)據(jù)類型的變量值是否相等。

前面說過,int 的自動裝箱,是系統(tǒng)執(zhí)行了 Integer.valueOf(int i),先看看Integer.java的源碼:

public static Integer valueOf(int i) {
? ?if(i >= -128 && i <= IntegerCache.high) // 沒有設(shè)置的話,IngegerCache.high 默認是127
? ? ? ?return IntegerCache.cache[i + 128];
? ?else
? ? ? ?return new Integer(i);
}

對于–128到127(默認是127)之間的值,Integer.valueOf(int i)返回的是緩存的Integer對象!!!(并不是新建對象)

所以范例中,i3與i4實際上是指向同一個對象。

而其他值,執(zhí)行Integer.valueOf(int i)返回的是一個新建的Integer對象,所以范例中,i1與i2指向的是不同的對象。

當然,當不使用自動裝箱功能的時候,情況與普通類對象一樣,請看下例:

Integer i3 =new Integer(100);?
Integer i4 =new Integer(100);?
System.out.println("i3==i4: "+(i3==i4));//顯示false

以上就是動力節(jié)點java培訓(xùn)機構(gòu)的小編針對“大家經(jīng)常復(fù)習(xí)的一些Java基礎(chǔ)試題及答案”的內(nèi)容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。

提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)

免費課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 欧美性大战久久久久久久蜜桃 | 亚洲欧美日韩国产精品第不页 | 999热成人精品国产免 | 成年人黄色在线观看 | 免费一级毛片在线播放视频 | 欧美日韩免费大片 | 四虎影院免费网址 | 成人免费视频在线看 | 孕妇xxxxxx孕交xxx | 久久久久免费视频 | 亚洲成人播放 | 国产全黄a一级毛片 | 国产欧美曰韩一区二区三区 | 欧美精品久久久久久久久大尺度 | 国产成人a毛片 | 麻豆亚洲| 亚洲综合在线成人一区 | 久青草影院在线观看国产 | 亚洲美女在线观看播放 | 99视频在线免费看 | 另类亚洲视频 | 国产精品精品视频 | 在线亚洲日产一区二区 | 尤物黄色 | 亚洲精品在线免费看 | 一区二区三区在线播放 | 免费在线观看h片 | 羞羞在线视频 | 亚洲欧美精品国产一区色综合 | 大狠狠大臿蕉香蕉大视频 | 成人在线免费 | 激情五月五月婷婷 | 91福利国产在线观看 | 日本精品一区 | 日日夜夜摸摸 | 免费视频久久 | 涩涩一区| 丁香婷婷影音先锋5566 | 久久天天躁狠狠躁夜夜爽蜜月 | 天天射天天操天天 | 亚洲一区免费看 |