package temperatureconversion;
import java.util.Scanner;
public static void main(String[] args) {
Scanner keyboard = new Scanner(System.in);
System.out.println("Please enter Conversion type: Press C for Celsius to Fahrenheit or press F For Fahrenheit to Celsius.");
String Vctype = keyboard.next();
if (Vctype == "f" || Vctype == "F"){
System.out.println("Please enter fahrenheit");
double Vfahrenheit = keyboard.nextInt();
Vfahrenheit = (Vfahrenheit)*(9/5)+(32);
System.out.println(Vfahrenheit);
}
if (Vctype == "c" || Vctype == "C"){
System.out.println("Please enter celcius");
double Vcelcius = keyboard.nextInt();
Vcelcius = (Vcelcius - 32)*(5/9);
System.out.println(Vcelcius) ;
}
}
}
大家好我想知道是否有人可以帮我解决上述代码。基本上在netbeans的输出控制台中,程序似乎在我点击C或F之后结束,但它应该要求一个数字然后允许数字输入,然后计算并最终显示计算。它似乎没有执行if语句我哪里错了?
答案 0 :(得分:0)
您正在将字符串与==
进行比较。所以它不起作用,你必须使用它:
if (Vctype.toLowerCase().equals("f"))
另请注意,使用" toLowerCase"使整个字符串小写,所以你不必有两个选项" F"和" f"。
如果您愿意,可以使用" compareTo"
if (Vctype.toLowerCase().compareTo("f") == 0)