三元运算符和包装类的一些细节(面试题)
示例如下:
boolean ? Object o1 : Object o2
编译时就必须保证o1
和o2
为同一类型变量
Object o = true ? new Integer(1) : new Double(2.0);
System.out.println(o); //1.0
先把后边两个对象转换为统一包装类型Double
后,然后赋值给变量o
,此时o
为Double
类型的变量,所以输出结果为1.0
.
boolean ? Object o1 : Object o2
编译时就必须保证o1
和o2
为同一类型变量
Object o = true ? new Integer(1) : new Double(2.0);
System.out.println(o); //1.0
先把后边两个对象转换为统一包装类型Double
后,然后赋值给变量o
,此时o
为Double
类型的变量,所以输出结果为1.0
.