【java】JDK5的新特性→→自動裝箱和拆箱

love_Aym發表於2018-04-03

一、JDK5的新特性

  • 自動裝箱:把基本型別轉換為包裝類型別
  • 自動拆箱:把包裝類型別轉換為基本型別

二、案例演示

public class JDK5 {
	public static void main(String[] args) {
//		int x = 100;
//		Integer i1 = new Integer(x);	//將基本資料型別包裝成物件,裝箱
//		
//		int y = i1.intValue();		//將物件轉換為基本資料型別,拆箱
		
		Integer i2 = 100;		//自動裝箱,把基本資料型別轉換成物件,底層為上述手動裝箱
		int z = i2 + 200;		//自動拆箱,把物件轉換為基本資料型別,底層為上述手動拆箱
		System.out.println(z);
		
		Integer i3 = null;
		int a = i3 + 100;		//底層用i3呼叫intValue,但是i3是null,null呼叫方法就會出現
		System.out.println(a);	        //空指標異常java.lang.NullPointerException
	}

}

三、注意事項

  • 在使用時,Integer  x = null; 程式碼就會出現NullPointerException。
  • 建議先判斷是否為null,然後再使用。

相關文章