區(qū)別如下:
(推薦學(xué)習(xí):java入門)
1、int 是基本類型,直接存數(shù)值;而integer是引用數(shù)據(jù)類型。
2、Int的聲明不需要實(shí)例化,且變量聲明后的初始值為0;Integer是一個(gè)類,初始值為null,需要進(jìn)行實(shí)例化,才能對(duì)變量數(shù)據(jù)進(jìn)行處理。
3、Integer類是int的包裝類,實(shí)際開(kāi)發(fā)中Integer被看成一個(gè)對(duì)象,可以進(jìn)行數(shù)據(jù)轉(zhuǎn)換等操作。
示例:
Integer num1 = 200; Integer num2 = 200; System.out.println("num1==num2: "+(num1==num2)); Integer num3 = 100; Integer num4 = 100; System.out.println("num3==num4: "+(num3==num4));
輸出結(jié)果:
num1==num2:false num3==num4:true
(視頻教程推薦:java視頻教程)
分析:
首先要明確equal方法與==的區(qū)別:
equals() 比較的是兩個(gè)對(duì)象的值(內(nèi)容)是否相同。
“==” 比較的是兩個(gè)對(duì)象的引用(內(nèi)存地址)是否相同,也用來(lái)比較兩個(gè)基本數(shù)據(jù)類型的變量值是否相等。
java定義:在自動(dòng)裝箱時(shí)對(duì)于值從–128到127之間的值,它們被裝箱為Integer對(duì)象后,會(huì)存在內(nèi)存中被重用,始終只存在一個(gè)對(duì)象而如果超過(guò)了從–128到127之間的值,被裝箱后的Integer對(duì)象并不會(huì)被重用,即相當(dāng)于每次裝箱時(shí)都新建一個(gè) Integer對(duì)象;
當(dāng)前名稱:Java中Int和Integer有什么區(qū)別
本文鏈接:http://weahome.cn/article/cgccdh.html