1.为什么Integer 1000!=1000 而 100==100
public static Integer valueOf(int i) {
if (i >= IntegerCache.low && i <= IntegerCache.high)
return IntegerCache.cache[i + (-IntegerCache.low)];
return new Integer(i);
}
Integer规定的使用缓存范围是-128~127之间,因此1000明显不在这个范围之内,所以每次自动装箱都会重新创建一个新的对象,每次都是一个新的地址