在学习 Java 的同时,我正在用 Java 做一个小项目。
基本上我希望用户通过 输入字符串JOptionPane.showInputDialog();
,如果该字符串为空,我希望它让他们重新输入有效字符串,然后程序将继续。
我确实考虑过使用goto
,但我阅读了它,它说这不是一个好习惯。
任何帮助将不胜感激。谢谢 :)
在学习 Java 的同时,我正在用 Java 做一个小项目。
基本上我希望用户通过 输入字符串JOptionPane.showInputDialog();
,如果该字符串为空,我希望它让他们重新输入有效字符串,然后程序将继续。
我确实考虑过使用goto
,但我阅读了它,它说这不是一个好习惯。
任何帮助将不胜感激。谢谢 :)
我会在一个无限循环中要求输入(使用OptionPane.showInputDialog()
)。这里有一些伪代码:
message = ""
while message.equals(""):
message = ask_for_input() // (.trim() if needed)
end
您可以循环执行此操作。所以你需要一个while循环,条件是输入为空。然后将弹出消息,直到用户输入内容。
尽管goto
是 Java 中的保留关键字,但它实际上(隐含地)意味着不被使用。
JOptionPane.showInputDialog(...)
返回一个String
。
我建议使用无限while
循环并将其与空循环进行比较,通过String.isEmpty()
.
例如:
String input = null;
while (true) {
input = JOptionPane.showInputDialog("Your input (not empty):");
if (!input.trim().isEmpty()) {
// TODO something with the input variable
break;
}
}
这就是do ... while
循环的用途。您还可以使用 Apache commonsStringUtils
类。
String input;
do {
input = JOptionPane.showInputDialog("Please enter your string");
} while (StringUtils.isBlank(input));