使用三目运算符的小细节

2019/05/30

使用三目运算符的小细节。

例子:

public static void main(String[] args) {
    Object o1 = true ? new Integer(1) : new Double(2.0);
    Object o2;
if (true) {
    o2 = new Integer(1);
} else {
    o2 = new Double(2.0);
}
    System.out.print(o1);
    System.out.print(" ");         
    System.out.print(o2);
}

输出结果为:

1.0 1

原因是在执行下面语句时

 Object o1 = true ? new Integer(1) : new Double(2.0);

有一个Double类型的数据,Object接收的时候,会转换成Double类型,因为使用Integer的话会导致精度的丢失。 细节决定成败,态度决定高度


<扫码关注有惊喜>

(转载本站文章请注明作者和出处 枕风宿雪-couldme

Show Disqus Comments