這篇要講到java拆箱(unboxing)、裝箱(boxing)、自動裝箱(auto-boxing)、自動拆箱(auto-unboxing)的概念了,
我舉個小例子來說明何謂拆箱(unboxing)、裝箱(boxing)、自動裝箱(auto-boxing))、自動拆箱(auto-unboxing),
我用Integer和int來說明。
Integer A = new Integer(10); // 裝箱上面的行為在Compilr中,
int B = A.intValue(); // 拆箱
B = A; // 自動拆箱
A = 20; // 自動裝箱
A = 20; 會被自動轉換成 A = new Integer(20);
我們稱之為自動裝箱。
B=A; 會被自動轉換成 B = A.intValue();
稱之為自動拆箱
簡單的說,
把primitive轉成物件,稱之為裝箱,
把物件轉乘primitive,稱之為拆箱。