//关于包装类使用的面试题
//三目运算符要求 表达式2 和 表达式3 类型一致,中间的自动类型提升了,int 转 double
@Test
public void test1() {
Object o1 = true ? new Integer(1) : new Double(2.0);
System.out.println(o1);// 1.0
}
@Test
public void test(){
//==比较引用数据类型时比较的为两个对象的地址值是否相同
Integer i = new Integer(1);
Integer j = new Integer(2);
System.out.println(i == j); //false
//Integer内部定义了IntegerCache结构,IntegerCache定义了Integer[]数组,保存了从-128-127范围的整数
//当我们使用自动装箱的方式时,并且给Integer赋值的范围在-128-127之间,就可以之间使用数组中的元素,不用重新new了。
//目的:提高效率
Integer a = 1;
Integer b = 1;
System.out.println(a==b); //true
Integer x = 128; //new了一个对象
Integer y = 128; //new了一个对象
System.out.println(x==y); //false
}
}