小编典典

在Java中将华氏度转换为摄氏温度

java

我正在尝试将华氏度转换为摄氏温度。现在当我使用此方法时出现错误:

double fahrenheit=input.nextDouble();

double celsius= ( **5** /9)*(fahrenheit-32);(Error)

然后再次尝试给定 (5.0), 那么为什么工作?


阅读 299

收藏
2020-11-26

共1个答案

小编典典

值“ 5”和“ 9”是整数,并且将5/9视为00.55这是为什么您得到错误答案的原因。当两个整数相除时,答案是floor()自动的。有必要将“5”和“ 9”之一写为5.0和9.0

更好的做法是始终将as 5.09.0or都写为double(5)and。double(9)
由于乘法和其他运算大多是递归的,因此该语句也可以正常工作。 (fahrenheit-32)*5/9;因为语句以双精度值开头

2020-11-26