Java中如何从多重循环直接跳出外层循环

Java中如何从多重循环直接跳出外层循环

编者:李国帅

qq:9611153 微信lgs9611153

时间:2020/01/16

背景原因:

如题,有时候用了多重循环,想直接退出外层循环执行下面的语句,通常会使用标记或者添加循环条件的方式,但是会使逻辑变得复杂。

偶然看到了官方文档“java跳转语句”,发现原来可以通过标签的方式指定继续哪个循环,或者终止哪个循环。

当然了不管是break还是continue的跳转都只能从里向外跳,不能从从外向里跳,也不能跳转到其他模块。

所需资源:

java

 

关键点:

continue 可以指定一个标签来说明继续哪个包围的循环。

使用break 语句直接强行退出循环,在一系列嵌套循环中使用break 语句时,它将仅仅终止最里面的循环。

使用break label这种形式的执行break时,控制被传递出标签指定的代码块。被加标签的代码块必须包围break 语句,但是它不需要是直接的包围break的块。

 

问题解决:

Java中如何从多重循环直接跳出外层循环

 

执行结果:

I/System.out: step

    outer:while begin.

    first begin.

    inner:while begin.

    second begin.

    third begin.

     break out of third block.

    continue inner block.

    inner:while begin.

    second begin.

    third begin.

    third end.

    break second block.

     break inner of outer block.

     break out of outer block.