Java输入空显示警报

时间:2013-11-02 23:20:03

标签: java string joptionpane

我在学习这门语言的时候正在用Java做一个小项目。

基本上我想要的是用户通过JOptionPane.showInputDialog();输入一个字符串,如果该字符串为空,我希望它让他们重新输入一个有效的字符串,然后程序将继续。< / p>

我所做的考虑是使用goto,但我读了它,并说这不是好习惯。

非常感谢任何帮助。 谢谢:))

4 个答案:

答案 0 :(得分:3)

我会在无限循环中请求输入(使用OptionPane.showInputDialog())。 这里有一些伪代码:

message = ""
while message.equals(""):
    message = ask_for_input() // (.trim() if needed)
end

答案 1 :(得分:2)

你可以循环完成。所以你需要一个while循环,其条件是输入为空。然后会弹出消息,直到用户输入内容。

答案 2 :(得分:2)

尽管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;
    }

}

答案 3 :(得分:1)

这是do ... while循环的用途。您还可以使用Apache commons StringUtils类。

String input;
do {
    input = JOptionPane.showInputDialog("Please enter your string");
} while (StringUtils.isBlank(input));