入力が1未満で1000より大きい場合に実行されると想定される単純なdowhileループを試しています。それ以外の場合は、ループで正しい数値を入力するようにユーザーに要求する必要があります。現在実行しているように見えるのは、ループをもう一度繰り返し、正しい入力を要求してから、終了メッセージを表示することです。条件が満たされている場合、なぜそれが繰り返されているのかわからない
String name = JOptionPane.showInputDialog(null,
"Please enter students lastname");
int input = Integer.parseInt(JOptionPane.showInputDialog(null,
"Please enter students ID"));
do {
JOptionPane.showMessageDialog(null,
"Please enter a student ID within the correct parameters");
input = Integer.parseInt(JOptionPane.showInputDialog(null,
"Please enter students ID"));
} while (input < 1 && input > 1000);
// Output dialog with user input
JOptionPane.showMessageDialog(null, "StudentID: " + input
+ "\nStudent Last: " + name);