Integer與int的區別以及自裝箱與拆箱

2021-09-19 18:43:22 字數 696 閱讀 6325

小白寫部落格,大佬多指教!

① int是乙個基本資料型別,integer是int的封裝類

賦值:int i=9;

對比:integer i=new integer(9);

看出來這是類與基本資料型別的區別

另外,在給integer變數賦值的時候可以寫成integer i=9;等同於上面的賦值語句

,這就要牽扯到自裝箱的概念,即編譯器自動把這兩條語句轉換

拆箱:看兩句**就懂了,

integer i=0;

//拆箱

int i=0;

拆箱的步驟是編譯器自動完成的,這樣物件就可以直接進行數值上的運算

integer i=9;

system.out.println(++i); //答案是10

②既然是基本資料型別與類的區別:

int i;  //初始值是0

integer i;初始值是null

③講一下為什麼要給int 封裝這個integer類

比如泛型list list=new list//這種寫法是錯誤的,因為容器裡只能裝object

list list=new list//正確

int與integer的區別

1.所佔記憶體不同 integer物件會占用更多的記憶體。integer是乙個物件,需要儲存物件的元資料。但是int是乙個原始型別的資料,所以占用的空間更少。2.型別及初始值 int 是基本型別,直接存數值,在類進行初始化時int類的變數初始為0 而integer是物件 integer是int的封裝...

int 和 Integer 的區別與作用

char character byte byte short short int integer long long float float double double 引用型別和原始型別的行為完全不同,並且它們具有不同的語義。引用型別和原始型別具有不同的特徵和用法,它們包括 大小和速度問題,這種型...

Integer 和int的區別

1.int是基本的資料型別,直接存數值 2.integer是int的封裝類 integer 是物件,用乙個引用指向這個物件 integer 是乙個類,是int的擴充套件,定義了很多的轉換方法。3.int和integer都可以表示某乙個數值 4.int和integer不能夠互用,因為他們兩種不同的資料...