尝试做if语句并得到错误" Y无法解析为变量"
System.out.println("Hotel Tax System");
System.out.println("Custom Tax Rate Y/N");
Answer = S.nextLine();
if (Answer = Y); { //getting issue with this line
System.out.println("Specify customer tax rate:");
CustomTax = S.nextInt();
} else {
System.out.println("Pressummed tax rate 20%");
}
任何人都知道此解决方案的潜在解决方案吗?
答案 0 :(得分:3)
三个错误:
if
语句()
Y
放在双引号中Answer = Y
错误,=
是一个赋值语句,也用于其他表达式。如果您想比较字符串,请不要使用==
来比较字符串,请使用equals()
或equalsIgnoreCase
方法。例如:
if (Answer.equals("Y"){
答案 1 :(得分:0)
您当前的代码存在两个问题。 1是你可能意味着“Y”而不是Y.编译器正在寻找一个它找不到的名为Y的变量。我相信你的意思是将它与字符串“Y”进行比较(如果我错了,请纠正我)。第二个问题是你的if语句后你有一个;意味着结束if语句并最终忽略范围内的代码
试试这个。
if (Answer.equals("Y")) {
System.out.println("Specify customer tax rate:");
CustomTax = S.nextInt();
} else {
System.out.println("Pressummed tax rate 20%");
}