如何在java循环中跳过2次迭代

时间:2015-03-24 10:43:11

标签: java

我有一个循环,使用continue跳过单次迭代:

for(int i=0;i<5;i++){
            if(i==2){
                continue;
            }
            System.out.println(i);
        }

输出为0 1 3 4

根据我的上述标准,例如i == 2,我希望获得输出0 1 4。 意思是我想跳过2次迭代。我该怎么做?

3 个答案:

答案 0 :(得分:4)

for(int i=0;i<5;i++){
    if(i==2){
        i++
        continue;
    }
    System.out.println(i);
}

在if语句中逐个增加i。

答案 1 :(得分:2)

我会远离跳过某些计数器的循环。你从中获得了什么?含义:

for (int i=0; i < 5; i++) {
  if (i != 2 && i != 3) {
    // do whatever needs to be done
  }
}

实现完全相同的事情;没有引入隐含的“goto”逻辑。为什么用这种方式操纵控制流 - 没有必要?

答案 2 :(得分:1)

你可以这样做:

for (int i = 0; i < 5; i++) {
    if (i == 2)
        i += 2;
    System.out.println(i);
}

但我同意其他人认为改变这样的循环变量是个坏主意。