【发布时间】:2021-05-27 22:40:24
【问题描述】:
当用户输入无效数据但继续工作时程序抛出错误,我如何强制用户输入数据直到他输入正确的数据?我试过System.exit(0),但那个停止程序。
也尝试使用while,但不知道如何创建消息以说“嘿无效输入,再试一次!”
public void setName(String name) {
if (name.matches("[a-zA-Z]+")) {
this.name = name;
} else {
System.out.println("Only letters for name!");
System.exit(0);
}
}
public void setName(String name) {
while (name.matches("[a-zA-Z]+")) {
this.name = name;
} else { //how to make message here?
System.out.println("Only letters for name!");
System.exit(0);
}
}
我之前看到了一些关于此的问题,但找不到与我的问题完全相似的东西,因为我有这个正则表达式。
我也有这个来添加新用户:
System.out.println("Add first name for passenger: ");
passengers.setName(scanner.nextLine());
这是我的方法registerNewPassenger 等等lastName,email,在方法结束时我有这个
ArrayList<Passengers> passengersList = new ArrayList<>();
passengersList.add(passengers);
System.out.println(passengersList);
在我的主目录中,我只是称之为。
【问题讨论】:
标签: java