1
public static void main(String[] args){
        System.out.println(1.-5); // -4.0

}

谁能解释为什么我得到上述结果,在此先感谢。

4

5 回答 5

9

这是因为它相当于1.0-5.0

于 2012-08-20T09:46:18.247 回答
4

这是由于隐式类型转换(http://en.wikipedia.org/wiki/Type_conversion),其中 5 由于 1 的存在而提升为 5.0。(相当于 1.0,双精度数)。

于 2012-08-20T09:49:52.343 回答
3

System.out.println(1.-5);相当于System.out.println(1.0-5.0);

所以结果是-4.0

于 2012-08-20T09:47:39.520 回答
1

从 1 中减去 5 得到结果 -4。

于 2012-08-20T09:46:30.817 回答
0

您的 System.out.println() 将计算结果视为 1.00 - 5.0(一个点将参数的类型表示为“double”)。所以结果是-4.0,因此它打印相同。

于 2012-08-20T09:49:38.073 回答