我正在尝试在此代码中提示输入名字/姓氏,但如果他们忘记填写该字段,我无法弄清楚如何重新提示用户输入该名称。现在,如果我的代码没有得到任何输入并且用户点击向前,我就会弹出一个消息框,然后程序将关闭。我希望能够重新提示完全相同的步骤,而不会让一切都无序。
这是我到目前为止所做的:
public void getValues(){
firstName = JOptionPane.showInputDialog(null, "Please enter employee's first name");
if (firstName.equals("")){
JOptionPane.showMessageDialog(null,"Please enter a first name, next time.");
System.exit(-1);
} else {
lastName = JOptionPane.showInputDialog(null, "Please enter employee's last name");
if (lastName.equals("")){
JOptionPane.showMessageDialog(null,"Please enter a last name, next time.");
System.exit(-1);
} else {
谢谢。
答案 0 :(得分:0)
您可以使用while
语句连续询问用户输入,直到输入有效。
例如:
while((firstName = JOptionPane.showInputDialog(null, "Your Message")).equals("")){
JOptionPane.showMessageDialog(null, "That name isn't valid!");
}
答案 1 :(得分:0)
在必要时使用while
循环,直到获得所需的输入。
这是一个片段。
String firstname = JOptionPane.showInputDialog(null, "Name?");
while(firstname.equals("")) {
firstname = JOptionPane.showInputDialog(null, "You need to enter a first name!);
}
答案 2 :(得分:0)
您可以这样做:
do {
firstName = JOptionPane.showInputDialog(null, "Please enter employee's first name");
} while (firstName != null && firstName.equals(""));
if (firstName == null) {
// user canceled
}