У меня есть этот код, который запрашивает имя пользователя и пароль.Просто простая JOptionPane.Программа должна запросить ввод, и если пользователь не записал никаких данных в имени пользователя, она должна отобразить сообщение об ошибке и отобразить то же самое предыдущее диалоговое окно с запросом имени пользователя.Тем не менее, это не работает таким образом.Несмотря на то, что я ничего не вводил, он все равно переходит к диалоговому окну пароля.Пожалуйста, проверьте мою логику, возможно, я был немного смущен;и есть ли способ проверить, является ли ввод в showInputDialog
строкой?чем-то вроде NumberFormatException
для целых чисел?Исключение для метода catch тоже не работает.:) Заранее спасибо.
public class SwingExercise {
public static void main(String[] args) {
String name = null;
boolean input = true;
try {
while (input) {
while (name == null) {
name = JOptionPane.showInputDialog(null, "Enter username:");
if (name == null) {
JOptionPane.showMessageDialog(null, "No input.", "Error", JOptionPane.ERROR_MESSAGE);
}
}
String pw = JOptionPane.showInputDialog(null, "Enter password:");
input = false;
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Invalid input.", "Error", JOptionPane.ERROR_MESSAGE);
}
}