break 与 continue

2019-05-27  本文已影响0人  CCZ_Mark

1. break

break 用来退出当前的循环体.

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

结果 : 
0
1
2

2. continue

退出本次循环

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

结果:
0
1
2
4

3. 多层 for 循环

3.1 跳出内部循环

可以看出 continue 跳出了内部的循环, 并不会终止上层的循环, 所以 continue 只针对当前循环体的本次循环, 并不会影响到上一层的 for 循环, 而 break 同理也只会影响到当前的循环体, 并不会影响到上一层的循环, 这里就不赘述了.
那么

  for (int i = 0; i < 5; i++) {
            for (int j = 6; j < 9; j++) {
                if (j ==7 ){
                    continue;
                }
                System.out.println(j);
            }
            System.out.println(i);
        }

结果 : 
6
8
0
6
8
1
6
8
2
6
8
3
6
8
4

3.2 跳出多层循环体

有时候我们经常遇到这么的需求, 如果内部的循环体一但触发了某些条件, 就要终止所有的循环直接跳出, return 当然可以实现, 但是会直接跳出本次方法, 有时候这并不是我们需要的, 这里要用到一个并不算常用的语法--标签

 label: for (int i = 0; i < 5; i++) {
            for (int j = 6; j < 9; j++) {
                if (j ==7 ){
                    break label;
                }
                System.out.println(j);
            }
            System.out.println(i);
        }
        
        System.out.println("100");

结果 :
6
100

可以看到, 我们可以用 break 直接跳转到标签标记的 for 循环处直接终止最外层的循环, 而 循环体外的方法也可以继续执行, 这样就弥补了 return 的不足也更加灵活.

上一篇下一篇

猜你喜欢

热点阅读