国产成人精品18p,天天干成人网,无码专区狠狠躁天天躁,美女脱精光隐私扒开免费观看

詳細總結Java基礎類(lèi)和包裝類(lèi)

發(fā)布時(shí)間:2021-07-06 11:13 來(lái)源:腳本之家 閱讀:0 作者:Yawn, 欄目: 開(kāi)發(fā)技術(shù)

目錄

一、簡(jiǎn)介

當需要往ArrayList,HashMap中放東西時(shí),像int,double這種基本類(lèi)型是放不進(jìn)去的,因為容器都是裝object的,這是就需要這些基本類(lèi)型的包裝器類(lèi)了。

基本數據類(lèi)型存放在棧中,效率更高
每個(gè)基本類(lèi)型在java.lang包中都有一個(gè)相應的包裝類(lèi),new出來(lái)的對象存在于堆中(通過(guò)棧中的引用來(lái)使用這些對象),是一個(gè)對象,因此具有更多的諸如“轉換”的方法

例子:

1.int轉Integer

int i = 0;
Integer ii = new Integer(i);

2.Integer轉int

Integer ii = new Integer(0);
int i = ii.intValue(); 

二、區別

  •  聲明方式:基本類(lèi)型不使用new關(guān)鍵字,而包裝類(lèi)型需要使用new關(guān)鍵字來(lái)在堆中分配存儲空間;
  • 存儲方式及位置:基本類(lèi)型是直接將變量值存儲在棧中,而包裝類(lèi)型是將對象放在堆中,然后通過(guò)引用來(lái)使用;
Integer a = null;
int b = a; // 拋出NullPointException

該使用方式編譯可以通過(guò),但是會(huì )拋出空指針異常,
int b = a實(shí)際上是int b = a.intValue(),
由于a的引用值為null,在空對象上調用方法就會(huì )拋出NullPointException
  • 初始值不同:基本類(lèi)型的初始值如int為0,boolean為false,而包裝類(lèi)型的初始值為null;
  • 使用方式:基本類(lèi)型直接賦值直接使用就好,而包裝類(lèi)型在集合如Collection、Map時(shí)會(huì )使用到。

三、自動(dòng)裝箱和拆箱

裝箱:自動(dòng)將基本數據類(lèi)型轉換為包裝器類(lèi)型;

拆箱:自動(dòng)將包裝器類(lèi)型轉換為基本數據類(lèi)型。

在Java SE5之前,如果要生成一個(gè)數值為10的Integer對象,必須這樣進(jìn)行:

Integer i = new Integer(10);

而在從Java SE5開(kāi)始就提供了自動(dòng)裝箱與自動(dòng)拆箱

Integer i = 10;  //裝箱
int n = i;   //拆箱

到此這篇關(guān)于詳細總結Java基礎類(lèi)和包裝類(lèi)的文章就介紹到這了,更多相關(guān)Java基礎類(lèi)和包裝類(lèi)內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自互聯(lián)網(wǎng)轉載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權請聯(lián)系QQ:712375056 進(jìn)行舉報,并提供相關(guān)證據,一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容。

jav
2018国产精华国产精品| 免费人成激情视频在线观看| 人妻免费视频公开上传| 日本阿v视频高清在线中文| 国产精品国产三级国产AV剧情| 97精品久久久久中文字幕|