Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在if语句[Java]中使用键盘上的字符_Java - Fatal编程技术网

如何在if语句[Java]中使用键盘上的字符

如何在if语句[Java]中使用键盘上的字符,java,Java,我的代码有点问题。我需要将温度从摄氏度转换为华氏度,反之亦然,用户可以选择“F”或“C”(小写或大写),但似乎不知道如何正确转换。我不知道如何让它识别变量应该通过键盘输入 Scanner Keyboard = new Scanner(System.in); System.out.println("Type C to convert from Fahrenheit to Celsius or" + "F to convert from Celsius to F

我的代码有点问题。我需要将温度从摄氏度转换为华氏度,反之亦然,用户可以选择“F”或“C”(小写或大写),但似乎不知道如何正确转换。我不知道如何让它识别变量应该通过键盘输入

 Scanner Keyboard = new Scanner(System.in); 
        System.out.println("Type C to convert from Fahrenheit to Celsius or" + 
        "F to convert from Celsius to Fahrenheit."); 
        char choice = Keyboard.nextLine().charAt(0);
        //Get user input on whether to do F to C or C to F 
        if (choice == F) //Fahrenheit to Celsius
            { 
                System.out.println("Please enter the temperature in Fahrenheit:"); 
                double C = Keyboard.nextDouble();
                double SaveC = C;
                C = (((C-32)*5)/9);
                System.out.println(SaveC + " degrees in Fahrenheit is equivalent to " + C + " degrees in Celsius."); 
            } 
        else if (choice == C) 
            { 
                System.out.println("Please enter the temperature in Celsius:"); 
                double F = Keyboard.nextDouble(); 
                double SaveF = F;
                F = (((F*9)/5)+32); 
                System.out.println(SaveF +" degrees in Celsius is equivalent to " + F + " degrees in Fahrenheit."); 
            } 
        else if (choice != C && choice != F) 
            { 
                System.out.println("You've entered an invalid character.");
            } 

您可以使用扫描仪读取输入,然后打电话查看它是否等于“C”或“F”

比如说,

扫描器x=新扫描器(System.in)

字符串选择=x.nextLine()


您可以使用扫描仪读取输入,然后打电话查看它是否等于“C”或“F”

比如说,

扫描器x=新扫描器(System.in)

字符串选择=x.nextLine()


当与
选项
变量比较时,F和C字符应该用单引号括起来。使用
|
(表示“或”)测试大写或小写。即

if (choice == 'F' || choice == 'f')
    ...
else if (choice == 'C' || choice == 'c')
    ...
else
    ...

当与
选项
变量比较时,F和C字符应该用单引号括起来。使用
|
(表示“或”)测试大写或小写。即

if (choice == 'F' || choice == 'f')
    ...
else if (choice == 'C' || choice == 'c')
    ...
else
    ...

你能出示
F
C
的声明吗?。。还有什么错误?你的问题是什么?对于初学者,像F和C这样的字母应该用单引号引起来,因为它们是字符,所以用“F”和“C”代替。你能显示
F
C
的声明吗?。。还有什么错误?你的问题是什么?对于初学者来说,像F和C这样的字母应该用单引号引起来,因为它们是字符,所以用“F”和“C”代替。对不起,我忘了。尝试choice.equals()最好使用“f”.equalsIgnoreCase(choice)。忽略大小写并防止NullPointerException抱歉,我忘了。尝试choice.equals()最好使用“f”.equalsIgnoreCase(choice)。忽略案例并防止NullPointerException@user2883232如果答案对您有帮助,请单击答案旁边的复选标记以将其标记为已接受。:)@用户2883232如果答案对您有帮助,请单击答案旁边的复选标记以将其标记为已接受。:)