do while loop.. to proceed if correct input is given(Do While循环..在输入正确的情况下继续)
本文介绍了Do While循环..在输入正确的情况下继续的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试执行While循环,但它一直在我身上失败。 因此,虽然用户没有输入日期,但它将一直运行,直到输入有效的日期。 IsValidDate是一个检查日期是真还是假的方法。仅当输入dd/mm/yy时,DATE才为真。
我正在检查日期是否正确。如果它是正确的,它将被存储到字符串Date中,程序将继续。 如果不正确,程序将再次提示用户输入正确的日期。
当我第一次输入错误的日期时,系统会提示我再次输入正确的日期。 此时,当我输入正确的日期时,程序无法再验证该日期是否正确。为什么会发生这种情况?请帮帮忙!
public void bookingA(){
bkList = new ArrayList<bookingInfo>();
Scanner keys = new Scanner(System.in);
String date;
System.out.println("
Enter the date: ");
while(!isValidDate(keys.nextLine())) {
do {
System.out.println("That is not a valid date! Please enter again (dd/mm/yy): ");
date = keys.nextLine();
} while (!isValidDate(date));
System.out.print(date);
break;
}
}
推荐答案
您有无限循环,请将其更改为:
System.out.println("
Enter the date (dd/mm/yy): ");
while (true) {
date = keys.nextLine();
if (isValidDate(date)) {
break;
} else {
System.out.println("That is not a valid date! Please enter again (dd/mm/yy): ");
}
}
System.out.print(date);
这篇关于Do While循环..在输入正确的情况下继续的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:Do While循环..在输入正确的情况下继续
基础教程推荐
猜你喜欢
- Java:带有char数组的println给出乱码 2022-01-01
- 减少 JVM 暂停时间 >1 秒使用 UseConcMarkSweepGC 2022-01-01
- 设置 bean 时出现 Nullpointerexception 2022-01-01
- FirebaseListAdapter 不推送聊天应用程序的单个项目 - Firebase-Ui 3.1 2022-01-01
- 如何使用 Java 创建 X509 证书? 2022-01-01
- 在 Libgdx 中处理屏幕的正确方法 2022-01-01
- Java Keytool 导入证书后出错,"keytool error: java.io.FileNotFoundException &拒绝访问" 2022-01-01
- 无法使用修饰符“public final"访问 java.util.Ha 2022-01-01
- “未找到匹配项"使用 matcher 的 group 方法时 2022-01-01
- 降序排序:Java Map 2022-01-01