读书人

这两行代码输出什么结果?该怎么解决

发布时间: 2012-07-05 07:59:18 作者: rapoo

这两行代码输出什么结果?
int a = 5;
System.out.println("value is -"+((a<5)?9.9:9));

RT

[解决办法]
value is -9.0,这是三目运算的一个特性,1.如果两个操作数类型不同,第二个数不是char,short,byte类型,默认将结果取两个操作数提升之后的值,这里是把int类型提升到了double。
[解决办法]
value is -9.0,三目运算符实现内部隐式转换,将运算后结果9提升为9.9的数据类型

读书人网 >J2SE开发

热点推荐