Convert a String to boolean
本问题已经有最佳答案,请猛点这里访问。
我需要用Java代码来解决这个练习:
我们有一个猴子和一个布尔参数asmile,我们需要知道猴子是否在笑,如果它是"我们在特洛布",如果它不是"我们是好的"。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | import java.util.Scanner; public class taxi { public static void main(String[] args) { boolean aSmile; Scanner scan = new Scanner(System.in); System.out.println("Is monkey A smiling?"); String answer = scan.nextLine(); if (answer.equalsIgnoreCase("yes")){ aSmile = true; } else if (answer.equalsIgnoreCase("no")){ aSmile = false; } else { System.out.println("Sorry, write a correct answer"); } if(aSmile = true){ System.out.println("We are in trouble"); } else if (aSmile = false){ System.out.println("We are good!"); } } } |
问题是,无论我在控制台上写什么,我总是得到"我们在特洛布"。
1 2 3 |
您正在将值
替换为:
1 2 | if(aSmile) { //Or if(aSmile == true) { ... |
您错误地使用了条件运算符。应该是这样的
1 2 3 | if(aSmile){ } |
您正在使用赋值运算符,然后检查布尔值。
1 2 3 |
1 2 | if(aSmile){ // means if aSmile is true } |