知識來源說明:
public class Main {
public static void main(String[] args) {
Integer i = 10;
int n = i;
}
}
反編譯:
在裝箱的時候自動調用的是Integer的valueOf()方法
在拆箱的時候自動調用的是Integer的intValue()方法
注意:
Integer類在通過valueOf方法創建Integer對象的時候,如果數值在[-128,127]之間,便返回指向IntegerCache.cache中已經存在的對象的引用;否則創建一個新的Integer對象。
Long類、Short類valueOf方法實現方法同上,而Double類的valueOf方法會採用與Integer類的valueOf方法不同的實現。