常用的類 包裝類

2021-10-08 19:14:32 字數 1677 閱讀 2134

基本資料型別所對應的包裝類

包裝類的預設值是null

對應關係:包裝就是將棧裡面的資料型別放堆裡面

byte byte

short short

int integer

long long

float float

double double

boolean boolean

char character

1.型別轉換(裝箱-拆箱)

裝箱:基本資料型別-引用資料型別 棧-堆

拆箱:引用資料型別-基本資料型別 堆-棧

public

class

test01

}

2.字串和基本資料型別的轉換
public

class

test02

}//結果

255255

11111111

----

----

----

----

150true

process finished with exit code 0

3.整數緩衝區(重點)

首先在棧裡面建立了乙個變數integer1,變數儲存100所在的堆位址

其次在棧裡面建立了乙個變數integer2,變數儲存另乙個100所在的堆位址

第乙個堆位址和第二個堆位址比較,得到結果為false

public

class

test01

}

裝箱實際上用的是integer.valueof方法,而不是構造方法

50在(-128)~127之間,integer03在堆內有乙個50對應的位址

integer04並沒有new出新物件,所以它和integer003共享堆位址

200沒有在(-128)~127之間,他的的計算方式不同,它是直接new出乙個integer,所以是乙個物件

第二個200也是new出乙個integer擁有不同的位址

詳情看下方分析的原始碼

integer integer03=50;

//自動裝箱,相當於integer.valueof(50)

integer integer04=50;

//自動裝箱,相當於integer.valueof(50)

system.out.

println

(integer03==integer04)

;//true

integer integer05=

200;

//自動裝箱,相當於integer.valueof(200)

integer integer06=

200;

//自動裝箱,相當於integer.valueof(200)

system.out.

println

(integer05==integer06)

;//false

檢查integer.valueof原始碼:

integer的cache(緩衝區)範圍為high-low 127-(-128)=255

public

static integer valueof

(int i)

常用類 包裝類

一 包裝類 對應基本資料型別 j a.lang.integer int j a.lang.long long j a.lang.double double j a.lang.character char j a lang.boolean boolean j a.lang.byte byte j a....

常用類的API Integer包裝類

bigdecimal可以對任意精度的資料進行運算,甚至可以運算超過long類的資料。建立bigdecimal物件,就是把資料封裝成物件。bigdecimal bd1 newbigdecimal 80.3 bigdecimal bd2 newbigdecimal 4.5 對兩個資料進行四則運算 加法 ...

常用API 包裝類

基本型別包裝類 基本資料型別 包裝類byte byte short short intinteger long long float float double double chat character boolean boolean integer類 integer類構造方法 方法名說明publi...