Integer 包裝類面試

Integer int1 = 120, int2 = 120, in3 = 140, int5 = 200;對象

System.out.println(int1 == int2);變量

System.out.println(int3 == int5);數據類型

結果 int1==int2 true方法

int3==int5 false;數據

解釋:首先四個都是Integer 對象,基本數據類型和包裝類有自動裝箱拆箱機制static

在賦值的時候回自動調用 valueof() 方法new

public static Integer valueOf(int i) {   return

        if (i >= IntegerCache.low && i <= IntegerCache.high)   

            return IntegerCache.cache[i + (-IntegerCache.low)];   

        return new Integer(i);   

}

若是整形變量的值介於 -128 到 +127 之間 ,若是常量池中有這樣的Integer 對象那麼就取改對象,不會新建對象 

相關文章
相關標籤/搜索