java - 如何确保正在阅读我的 else 语句?-Java 的全新
问题描述
我是编码的新手,并试图弄清楚为什么我的 else 语句不起作用。我不确定是不是因为我的布尔语句。我尝试将布尔值添加为 false ,但这不起作用。
import java.util.Scanner;
public class Practice {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Are you exercising tonight?");
String answer = input.nextLine();
System.out.println("You said " + answer + " Are you sure?");
String answer2 = input.nextLine();
boolean Yes = true;
if (Yes) {
System.out.println("Good. That's what I wanted to hear");
} else {
System.out.println("WRONG ANSWER");
}
}
}
解决方案
您需要将Yes
变量设置为要检查的条件:
import java.util.Scanner;
public class Practice {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Are you exercising tonight?");
String answer = input.nextLine();
if (answer.equalsIgnoreCase("yes")) {
System.out.println("Good. That's what I wanted to hear");
} else {
System.out.println("WRONG ANSWER");
}
}
}
如果您想确保用户输入了正确的内容(“您确定吗?”部分),您可以添加一个循环:
import java.util.Scanner;
public class Practice {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String answer;
while (true) {
System.out.println("Are you exercising tonight?");
answer = input.nextLine();
System.out.println("You said " + answer + " Are you sure?");
String answer2 = input.nextLine();
// If the user is sure, break the loop
if (answer2.equalsIgnoreCase("yes")) break;
// Implicit else: ask the user again
}
if (answer.equalsIgnoreCase("yes")) {
System.out.println("Good. That's what I wanted to hear");
} else {
System.out.println("WRONG ANSWER");
}
}
}
推荐阅读
- mysql - RDS 代理会影响当前的应用程序端池吗?
- json - IOS swift将字典转换为json字符串会创建无效的JSON
- kubernetes - 间通讯
- python - 如何在 Python 中使用 split 返回分隔符?
- snowflake-cloud-data-platform - 雪花:将表数据卸载到 JSON,没有 .gz 压缩怎么办?
- c# - 注册为 services.AddSingleton 但使用 using 块启动时如何处理资源
- go - 从 TCP 读取数据包长度时获取垃圾值
- android - RecyclerView 不更新其视图,但更新了 List
- javascript - 如何打造打字机效果?
- python - 为什么在colorsys包中将rgb转换为hsl时rgb值不正确