成功将String解析为Double,但所有后续计算都失败

Col*_*ton 2 java parsing

我正在为我的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)得到了相同的结果.

Eri*_*rik 5

Try 5.0/9.0- 5/9是整数除法,等于0.整数除法为您提供一个整数 - 无论您将结果分配给哪种类型.

你也可以保持一致private final static double FToCFactor = 5.0/9.0;并与之相乘.