boolean ? Object o1 : Object o2
编译时就必须保证o1和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.
Double
o
1.0