break和continue详解for循环

2020-01-03 00:36:00

参考链接 Java:break和continue关键字的作用

二者的作用和区别

1. break:直接跳出当前循环体(while、for、do while)或程序块(switch)。其中switch case执行时,一定会先进行匹配,匹配成功返回当前case的值,再根据是否有break,判断是否继续输出,或是跳出判断(可参考switch的介绍)。

2. continue:不再执行循环体中continue语句之后的代码直接进行下一次循环

 

代码演示

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
public class Test {
    public static void main(String[] args) {
        System.out.println("-------continue测试----------");
        for (int i = 0; i < 5; i++) {
            if (i == 2) {
                System.out.println("跳过下面输出语句,返回for循环");
                continue;
            }
             
            System.out.println(i);
        }
 
 
        System.out.println("----------break测试----------");
        for (int i = 0; i < 5; i++) {
            if (i == 2) {
                System.out.println("跳过下面输出语句,返回for循环");
                break;
            }
            System.out.println(i);
        }
 
    }
}

  运行结果:

可以看到测试 continue时,当 i==3,直接跳过了continue之后的输出语句,进入下一次循环。

在break测试中,当 i==2,直接跳出了 for 循环,不再执行之后的循环


  • 2018-01-17 15:58:16

    java实现定时任务的三种方法

    在进行多线程编程中,比较重要也是比较困难的一个操作就是如何获取线程中的信息。大多数人会采取比较常见的一种方法就是将线程中要返回的结果存储在一个字段中,然后再提供一个获取方法将这个字段的内容返回给该方法的调用者。如以下的ReturnThreadInfo类:

  • 2018-01-18 11:26:53

    浅谈js运行机制(线程)

    从开始接触js时,我们便知道js是单线程的。单线程,异步,同步,互调,阻塞等。在实际写js的时候,我们都会用到ajax,不管是原生的实现,还是借助jQuery等工具库实现,我们都知道,ajax可以实现局部刷新,并且在请求处理时,任然可以响应用户的操作,比如点击事件。不是说js是单线程吗?这些都是怎么实现的? 在阅读《深入理解Bootrap的源码》一书,在分析轮播组件(carousel.js)的源码时,作者对一句代码操作的注释引起了我的兴趣。

  • 2018-01-18 17:41:05

    Fatal error: Class 'Memcached' not found

    从别地方复制来了新的配置文件,包了这样的错误,因为我也是刚刚安装了php7,以为是php的问题,于是就根据网上的提示,安装memcached.dll包。