典型的响应是JAVA将数字视为双精度,因为这是Java中的缺省值,并在编译时给出不匹配错误。如果我想要一个双精度类型的变量,我会使用double关键字,专门将变量声明为双精度类型。double x = 3.14;
为什么Java在声明变量时无法识别这一点,并坚持需要通过在末尾添加'f‘来将文本从双精度转换为浮点型?
在Fortran 90中(在Mac OS X上使用gfortran ),如果我将一个值赋给一个双精度变量,而没有显式地附加一个种类,精度就不会“接受”。0.123456791043282正如预期的那样,单精度结果从小数点后8位开始四舍五入,但只有我显式分配给_dp的双精度变量保留了所有这看起来很奇怪,因为我认为(我是Fortran的新手)双精度变量会自动成为双精度变量。有没有更好的方法来赋值双精度变量,或者我必须像上面