我正在为我的Java类编写程序,我们被要求使用GUI设计一个程序,该程序接受温度值并转换为其他程序,例如从华氏温度到摄氏温度和开尔文温度.我遇到了一个问题:
if (event.getSource() == fahrText)
{
string = event.getActionCommand();
tempF = Double.parseDouble(string);
tempC = (tempF - 32) * (5/9);
tempK = tempC + 273.15;
resultF.setText("Fahr: " + tempF);
resultC.setText("Cels: " + tempC);
resultK.setText("Kelv: " + tempK);
}
Run Code Online (Sandbox Code Playgroud)
无论我输入"fahrText"JTextField的是什么数字,我都将Celsius设为0,而tempF显示我输入的值.有什么建议吗?我使用Double.valueOf(string)得到了相同的结果.
Try 5.0/9.0- 5/9是整数除法,等于0.整数除法为您提供一个整数 - 无论您将结果分配给哪种类型.
你也可以保持一致private final static double FToCFactor = 5.0/9.0;并与之相乘.
| 归档时间: |
|
| 查看次数: |
288 次 |
| 最近记录: |