如下代码的运行结果为哪个? int x=4; System.out.println((x>4)?99.9:9); | |
备选答案: |
A : 9 |
你的回答: | A |
回答结果: | 错 |
答案: | B |
答案详解: | 因为前面的是99.9 是double类型的,所以系统自动转换到输出double,所以为9.0 而不是9 |
然后也存在着如下的情况
System.out.println((x>4)?99.9:“9”);
当指定为字符串的时候就会是按照字符串输出,而不会输出9.0了,输出结果则为9
再来看下面的语句
System.out.println((x>4)?"99.9":9);
因99.9已经被转化了,所以9也不会再进行转化,输出结果仍然为9