java基本型別和包裝型別的“==”和equals()方法
public class HelloWorld {
/*
1、基本型和基本型封裝型進行“==”運算子的比較,基本型封裝型將會自動拆箱變為基本型後再進行比較,
因此Integer(0)會自動拆箱為int型別再進行比較,如1,4行,顯然返回true。
另外兩個Integer物件進行“==”比較時,如果有一方的Integer物件是new獲得的,返回false,因為比較的是兩個物件的地址,如5,6。
3、兩個基本型的封裝型進行equals()比較,首先equals()會比較型別,如果型別相同,則繼續比較值,如果值也相同,返回true,如8,10。
4、基本型封裝型別呼叫equals(),但是引數是基本型別,這時候,先會進行自動裝箱,基本型轉換為其封裝型別,若型別不同返回false,
若裝箱後型別相同,則比較值,如果值相同,則返回true,否則返回false。如7,9。*
/
public static void main(String[] args) {
int a=257;
Integer b=257;
Integer c=257;
Integer d=new Integer(a);
Integer d1=new Integer(a);
Integer b2=57;
Integer c2=57;
System.out.println(a==b);//1
System.out.println(b==c);//2
System.out.println(b2==c2);//3
System.out.println(a==d);//4
System.out.println(b==d);//5
System.out.println(d==d1);//6
/**以上輸出結果:
* true
false
true
true
false
false
*/
System.out.println();
//System.out.println(a.equals(b)); 編譯出錯,基本型不能呼叫equals()
System.out.println(b.equals(257.0)); //7
System.out.println(b.equals(c)); //8
System.out.println(b.equals(a)); //9
System.out.println(b.equals(d)); //10
/**
* 以上輸出結果:
false
true
true
true
*/
}
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2310/viewspace-2798582/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Java基礎-基本型別和包裝型別Java型別
- Java 包裝類和基本型別Java型別
- Java中基本資料型別和包裝型別有什麼區別?Java資料型別
- Java的基本型別和引用型別Java型別
- javascript基本型別 引用型別 基本包裝型別JavaScript型別
- (2)Java基本資料型別和包裝類Java資料型別
- 【Java】基本型別包裝類Java型別
- 你不知道的JavaScript--Item4 基本型別和基本包裝型別(引用型別)JavaScript型別
- 面試官:兄弟,說說基本型別和包裝型別的區別吧面試型別
- java- 型別-轉換:基本型別以及包裝型別的轉換Java型別
- java基本資料型別包裝類Java資料型別
- js基本型別和引用型別區別JS型別
- Java基本資料型別和引用型別 - Java那些事兒Java資料型別
- Javascript 之基本包裝型別JavaScript型別
- JAVA中基本資料型別和引用資料型別Java資料型別
- java 方法修改主函式裡基本資料型別和引用資料型別的區別Java函式資料型別
- JS篇-基本型別和引用型別、typeofJS型別
- Java中 equals() 方法和 == 的區別Java
- TypeScript 基本型別和泛型的使用TypeScript型別泛型
- Java-API-基本資料型別包裝類JavaAPI資料型別
- Java開發學習--Java 中基本型別和包裝類之間的轉換Java型別
- 從賦值看基本型別和引用型別的區別賦值型別
- JAVA 基本型別與 引用型別區別Java型別
- 基本資料型別和引用型別的初始值資料型別
- JavaScript 基本資料型別和引用型別的區別詳解JavaScript資料型別
- Java long型別和Long型別的那些事Java型別
- Scala 泛型型別和方法泛型型別
- 二十八、基本型別包裝類型別
- 常見物件-基本型別包裝類物件型別
- ==和equals方法的區別
- java基本型別和物件之間的轉換Java型別物件
- 【Java】equals 和 == 的區別Java
- js資料型別之基本資料型別和引用資料型別JS資料型別
- 14.Java-Arrays(類)、基本型別包裝類、Integer(類)Java型別
- 【Java】基本資料型別包裝類面試題之一Java資料型別面試題
- Java--包裝類(基本型別和字串之間的轉換)、進位制轉換Java型別字串
- java基礎學習之二:變數、基本資料型別及其對應的包裝型別Java變數資料型別
- 《JavaScript 闖關記》之基本包裝型別JavaScript型別