gpt4 book ai didi

java - 如何使用扫描仪获取 boolean 用户输入?

转载 作者:行者123 更新时间:2023-11-29 03:20:58 24 4
gpt4 key购买 nike

所以我必须询问用户他们是否超过 18 岁,他们必须回答是或否。并不断循环,直到他们输入正确的输入

到目前为止,我有这个

boolean b = false;
do {
try {
System.out.print("Are you above 18?");
Scanner n = new Scanner(System.in);
boolean bn = s.nextBoolean();

if (bn == true) {
// do stuff
} else if (bn == false) {
// do stuff
}

} catch (InputMismatchException e) {
System.out.println("Invalid input!");
}
} while (!b);

但是,它不会随着循环继续运行而工作,它不会正确读取输入并执行我的 if 语句。我该如何解决?谢谢!

最佳答案

对您的程序进行微调。这行得通

boolean b = false;
do {
try {
System.out.print("Are you above 18?");
Scanner n = new Scanner(System.in);
boolean bn = n.nextBoolean();
if (bn == true) {
System.out.println("Over 18");
} else if (bn == false) {
System.out.println("under 18");
}

} catch (InputMismatchException e) {
System.out.println("Invalid input!");
}
} while (!b);

输出是

Are you above 18?true
Over 18
Are you above 18?false
under 18
Are you above 18?

关于java - 如何使用扫描仪获取 boolean 用户输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23667462/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com