void forgotPassword() { System.out.println("请输入手机号码:"); String phoneNumber = scanner.nextLine(); User userFound = null; for (User user : users) { if (user.getPhoneNumber().equals(phoneNumber)) { userFound = user; break; } } if (userFound == null) { System.out.println("手机号码错误,请重新输入!"); return; } System.out.println("请输入用户的邮箱:"); String email = scanner.nextLine(); if (userFound.getEmail().equals(email)) { System.out.println("验证成功,请输入新密码:"); String password = scanner.nextLine(); userFound.setPassword(password); System.out.println("修改成功!"); } else { System.out.println("邮箱错误,请重新输入!"); } }将两次的重新输入手机和邮箱号可以跳回上一步进行输入而不是直接结束代码知道输入正确才结束
时间: 2024-01-24 19:05:34 浏览: 31
你的问题是如何修改这段代码,让用户在输入错误的手机号码或邮箱后能够重新输入而不是直接结束代码。
你可以在输入错误的手机号码或邮箱后,使用循环让用户重新输入正确的信息,直到输入正确为止。以下是修改后的代码示例:
```java
void forgotPassword() {
while (true) {
System.out.println("请输入手机号码:");
String phoneNumber = scanner.nextLine();
User userFound = null;
for (User user : users) {
if (user.getPhoneNumber().equals(phoneNumber)) {
userFound = user;
break;
}
}
if (userFound == null) {
System.out.println("手机号码错误,请重新输入!");
continue; // 继续下一轮循环
}
while (true) {
System.out.println("请输入用户的邮箱:");
String email = scanner.nextLine();
if (!userFound.getEmail().equals(email)) {
System.out.println("邮箱错误,请重新输入!");
continue; // 继续下一轮循环
}
System.out.println("验证成功,请输入新密码:");
String password = scanner.nextLine();
userFound.setPassword(password);
System.out.println("修改成功!");
return; // 结束方法调用
}
}
}
```
现在,当用户输入错误的手机号码或邮箱时,程序将会循环提示用户重新输入,直到输入正确为止。