java-JOptionPane.showInputDialog循环(使用do while循环)

我正在尝试从用户那里获取4到10之间的整数.如果他们回答超出此范围,它将进入循环.当用户第一次正确输入数字时,它不会中断并继续执行else语句.如果用户在else语句中正确输入了该数字,它将正确中断.

如果第一次输入正确,如何使它断开?

**我是Java的初学者,如果我在这里想念这很愚蠢,请向我道歉.

public int companySize() {  

    int ansCompany;

    do {
        ansCompany = Integer.parseInt(JOptionPane.showInputDialog
                ("Please input the company size"));

        if ( ansCompany <= 4 && ansCompany <= 10 ) {
                         break;

        } else {
       ansCompany = Integer.parseInt(JOptionPane.showInputDialog
                ("Please enter a valid company size"));

        if ( ansCompany <= 4 && ansCompany <= 10 ) {
                          break;
        } // ends nested if condition
    } //ends else 
          }//ends do
    while ( ansCompany < 4 || ansCompany > 10);
    return ansCompany;
}// ends public int companySize()

我从主要称呼它如下:

public static void main(String[] args) {

UserInput getResult = new UserInput();
int company_size =  getResult.companySize();

}// ends main

解决方法:

如果用户第一次输入错误的值,我不确定为什么需要两个相同的对话框,因为最后只会返回一个值(ansCompany).

通过将do-while语句设置为中断条件(小于4或大于10),它将循环播放,直到用户输入正确的数字为止.

public int companySize() {
 int ansCompany;

 do {
   ansCompany = Integer.parseInt(JOptionPane.showInputDialog
      ("Please input the company size"));

 } while (ansCompany < 4 || ansCompany > 10);

 return ansCompany;

}

上一篇:java-如何编写循环遍历if语句的循环?


下一篇:javascript-分层数据,如何循环所有级别并将附加数据插入每个节点