将华氏温度转换为celcius(Java)

时间:2016-09-23 12:04:12

标签: java swing while-loop do-while

我要做的是编写一个华氏度值介于1-100之间并将其转换为摄氏度的程序。如果值不在代码之间,则应重新运行而不必重新启动程序。我对Java很陌生,但这就是我想出来的。

npm install -g npm

此代码几乎可以使用。如果“f”不在1和100之间,它会重新运行。如果我然后将f修正为Celsius值写出“C”“无穷大”时间的可接受值,则while循环由于某种原因不会中断。如果有人能够解释我做错了什么,我会很感激。

1 个答案:

答案 0 :(得分:1)

我想你可能想要这个,当我运行你提供的代码并输入114后跟14时,程序退出而不显示转换。相反,您可以执行以下操作:

package forstaPakage;

import javax.swing.*;

public class Main {

    public static void main(String[] args) {

        String str = "";

        while(true) {
            int f = Integer.parseInt(JOptionPane.showInputDialog( str + "\n" + "hur många farenheit?"));
            if(f>0 && f<101){
                int c =  ((f-32)*5) / 9;
                System.out.println(f + " farhenheit är lika med " + c + " celcius" );
                break;
            } else {
                str = "Ogiltligt värde, skriv in ett nytt";
            }
        }

    }
}