使用三目运算符的小细节。
例子:
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