Integer類的自動拆箱和裝箱

2021-10-03 12:33:14 字數 811 閱讀 5522

一、自動裝箱

自動裝箱就是自動將基本資料型別轉換為包裝器型別。

integer a = 200;
這句**經編譯後其實為:

integer a = integer.valueof(200);
二、自動拆箱

拆箱就是自動將包裝器型別轉換為基本資料型別。

integer a = 10;

int b = a; //拆箱

這段**經過編譯後為:

integer a = integer.valueof(10);

int b = a.intvalue();

三、integer.valueof(int i)方法

public static integer valueof(int i) 

public static void main(string args)

可以看出當i在-128到127之間時,自動裝箱其實返回的integer物件為integercache.cahe中的。否則就需要new integer(i),這也是為什麼:

integer a = 100;

integer b = 100;

system.out.println(a == b); //true

integer c = 321;

integer d = 321;

system.out.println(c == d);//false

Integer自動拆箱裝箱

integer a new integer 3 integer b 3 int c 3 system.out.println a b system.out.println a c 問題一 上面的輸出為啥?答案 false true 解答 第乙個是兩個引用之間的比較,他們沒有引用同一物件,所以為fal...

Integer自動拆箱 自動裝箱

package com.tmt.test code public class zhuangchaixiiangtest 這個的運算結果是什麼呢?new integer 128 int 128 true new integer 128 new integer 128 false integer 127...

裝箱和拆箱,自動裝箱和自動拆箱

以integer的建立為例。裝箱 把基本資料型別轉換成包裝類物件 int integer integer num1 new integer 17 拆箱 把乙個包裝類的物件,轉換成基本型別的變數 integer int int num2 num1.intvalue 自動裝箱 integer num3 ...