public static void main(String[] args){
System.out.println(1.-5); // -4.0
}
谁能解释为什么我得到上述结果,在此先感谢。
public static void main(String[] args){
System.out.println(1.-5); // -4.0
}
谁能解释为什么我得到上述结果,在此先感谢。
这是因为它相当于1.0-5.0
这是由于隐式类型转换(http://en.wikipedia.org/wiki/Type_conversion),其中 5 由于 1 的存在而提升为 5.0。(相当于 1.0,双精度数)。
System.out.println(1.-5);
相当于System.out.println(1.0-5.0);
所以结果是-4.0
从 1 中减去 5 得到结果 -4。
您的 System.out.println() 将计算结果视为 1.00 - 5.0(一个点将参数的类型表示为“double”)。所以结果是-4.0,因此它打印相同。