下面是我的 Java 代码。如果用户输入的数字不等于1
该方法getInput()
将被再次调用。
public void getInput(){
int i=0;
while(i<=4){
result[i] = Integer.parseInt(JOptionPane.showInputDialog("Enter Result (1 = pass, 2 = fail)"));
int res = result[i];
if(res!=1){
JOptionPane.showMessageDialog(null,"Wrong input, please try again!");
System.out.println("Wrong Input:" + res);
getInput();
}
System.out.println("count:"+i);
i=i+1;
}
}
以下是代码产生的结果
- count:0 <- 从 0 开始计数
- 计数:1
- 错误输入:2 <- 输入错误的输入并
getInput()
再次调用方法。 - count:0 <- 从 0 开始计数
- 计数:1
- 计数:2
- 计数:3
- 计数:4
- count:2 <- 从 2 重新开始
- 计数:3
- 计数:4
问题是计数器工作不正常。有人可以帮我解决这个问题吗?为什么会这样?