介紹
java 對基本的型態和對應的物件的自動轉換是編譯時完成的。
讓我們來簡單是如何做到的。
這樣的轉換叫裝箱及拆封 (box/unbox)。
比如將int的變量轉換成Integer對象,這個過程叫做裝箱,
反之將Integer對象轉換成int類型值,這個過程叫做拆箱。
自動裝箱
看代碼吧
1 | public static void main(String[] args) { |
反組譯後是下面的程式。
1 | public static void main(String args[]) |
自動拆封
看下面的代碼
1 | public static void main(String[] args) { |
反組譯後
1 | public static void main(String args[]) |
結論
所以,裝箱過程是通過調用包裝器的valueOf方法實現的,
而拆箱過程是通過調用包裝器的 xxxValue方法實現的。
Java 對語法中加入了方便的用法,讓開發人員更方便使用 java。