如何通过 JOptionPane 进行简单循环

How to make a simple loop through JOptionPane

我是新手,找不到我要找的确切答案。我正在尝试使用 JOptionPane 创建一个非常简单的循环,我在其中插入 1-10 之间的值并继续循环。如果该值超过 10 或低于 1,您应该要求用户重试。到目前为止我有这个。如果该值达到 0,则程序应该结束。

    String ans_s = JOptionPane.showInputDialog( "Please enter a rating between 1-10 (0 to stop)");
    int number = Integer.parseInt(ans_s);
    if (number > 10 || number < 0) {
    JOptionPane.showMessageDialog( null, "Please Try Again");
    ans_s = JOptionPane.showInputDialog( "Please enter a number between 1-10 (0 to stop)");
    number = Integer.parseInt(ans_s);
    }
    else if (number < 10 || number > 0) {
    ans_s = JOptionPane.showInputDialog( "Please enter a rating between 1-10 (0 to stop)");
 
    }
    else if (number == 0) {
        
     JOptionPane.showMessageDialog(null, "Finished");
    }

似乎没有任何循环,所以我只需要一些指导。

你需要一个循环结构,

boolean control_statement = true;
while (control_statement) {
    codeInThisMethodWillLoop(); //Until control_statement = false
}

final int maxLoops = 10; //can be any number
for (int loopCounter = 0; loopCounter < maxLoops; loopCounter++) {
    codeInThisMethodWillLoop(); //Until loopCounter = maxLoops
}

你的情况

int number = -1;
while (number != 0) {
    String ans_s = JOptionPane.showInputDialog( "Please enter a rating between 1-10 (0 to stop)");
    number = Integer.parseInt(ans_s);
    if (number > 10 || number < 0) {
        JOptionPane.showMessageDialog( null, "Please Try Again");
        ans_s = JOptionPane.showInputDialog( "Please enter a number between 1-10 (0 to stop)");
        number = Integer.parseInt(ans_s);
    }
    else if (number < 10 || number > 0) {
        ans_s = JOptionPane.showInputDialog( "Please enter a rating between 1-10 (0 to stop)");
    }
    else if (number == 0) {
         JOptionPane.showMessageDialog(null, "Finished");
    }
}