java里面的一个break是lua break跳出for循环一层for循环,还是可以lua break跳出for循环几层

2.break跳转出多层循环体
本文所属图书&>&
本书基于Java SE平台,从初学者的角度出发,通过通俗易懂的语言、丰富的实例、细腻的讲解,由浅入深、循序渐进地全面介绍了Java 语言的基础知识和常用开发技术。本书讲解时多用类比、对比等写作手法,并配合大...&&
从上面的讲解中,可知 break可以跳转出单层循环体。如果循环体是嵌套的多层循环,那该怎么办呢?看下面这个程序。
【范例3-16 】 break 跳转出多层循环
public class BreakDemo03 {
& public static void main(String[] args) {
& for (int i=1;i&=3 ;i++ ){&&& //外层循环,从1 到9 循环
&& System.out.println(&外层循环上部,i=&+i);&
&& for (int k=1;k&=4 ;k++ ){
&&& System.out.println(&内层循环上部,k=&+k);
&&& if (k==2){&&&&& //若i=3 ,则执行花括号代码
&&&& System.out.println(&####i=3,退出循环!#####&);
&&&&&&&&& //中断循环
&&&& System.out.println(&内层循环下部,k=&+k);
&& System.out.println(&外层循环下部,i=&+i);&
程序编译结果如图3-26 所示。
上面程序中,可以发现 break语句只是跳转出当前循环体,没能跳转出多层循环。从逻辑上来说内层循环是属于外层循环的(内层循环是外层循环的一部分)。 语言为我们提供了标签功能lable 。使用标签 lable 可以直接从内层循环跳转出外层循环。
【格式3-8】 lable
& 循环语句
其中,标签名要满足 的标识符命名规则。可以在内层和外层同时使用标签,但在同一个作用域内,标签名不能相同。
【范例3-17 】 break 的标签
public class BreakLableDemo01 {
& public static void main(String[] args) {
& lable01:&&&&&& //定义外层循环标签lable01
& for (int i=1;i&=3 ;i++ ){&& //外层循环,从1 到9 循环
&& System.out.println(&内循环上部,i=&+i); //打印i
&& lable02:&&&&& //定义内层循环标签lable01
&&& for (int k=1;k&=4 ;k++ ){
&&&& if (k==3){&&& //若i=3 ,则执行花括号代码
&&&&& System.out.println(&###k=&+k+&,要跳转出多层循环
&&&&& ###&);
&&&&& break lable01;& //中断循环
&&&& }//if end
&&&& System.out.println(&k=&+k);& //打印k
&&& }//for end
&& System.out.println(&内循环下部,i=&+i); //打印i
& }//for end
& System.out.println(&程序执行结束!&);&
&}//main end
程序编译结果如图3-27 所示。
上面程序中,从外层循环开始执行,先打印出外层循环的i=1 ,然后执行到内层循环。在内层循环中 k不等于3 ,所以打印 k=1 和k=2 ,直到 k=3 ,跳转到标签上,退出多层循环。可以发现,当k=3 时,直接执行的是&System.out.println(&程序执行结束!&); &语句而不是&System.out.println(&内循环下部,i=&+i); &。所以可知,标签可以直接跳转出多层循环。
提示:循环语句功能虽然强大,但是稍微不注意,循环中的算法很容易导致死循环,所以在循环体中的特殊地方可以使用break语句中断循环。
您对本文章有什么意见或着疑问吗?请到您的关注和建议是我们前行的参考和动力&&
您的浏览器不支持嵌入式框架,或者当前配置为不显示嵌入式框架。
文章下载读书温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
在java里面,有goto这个关键字,但是实际却没有啥作用,这就让我们不像在c/c++里面能够随便让程序跳到那去执行,而break只能跳出当前的一个循环语句。可以用continue实现。public class Countinue { /**
* @param args
*/ public static void main(String[] args) {
// TODO Auto-generated method stub
//如果在这里标记 &w:System &则错误 &continue cannot be used outside of a loop
//不能在一个循环的外边使用,也就是说只能在个循环的开始
//w: & &错误
System.out.println("---------------------"); w: //正确
for(int i=0;i&5;i++){
for(int j=i;j&5;j++){
System.out.print(j);
System.out.println();
}& & & & & }}
阅读(3402)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
在LOFTER的更多文章
loftPermalink:'',
id:'fks_',
blogTitle:'黑马程序员——java中用continue跳出多重循环继续下一次循环',
blogAbstract:'------- &a href=\"\" target=\"blank\"&android培训&/a&、&a href=\"\" target=\"blank\"&java培训&/a&、期待与您交流! ----------在java里面,有goto这个关键字,但是实际却没有啥作用,这就让我们不像在c/c++里面能够随便让程序跳到那去执行,而break只能跳出当前的一个循环语句。可以用continue实现。',
blogTag:'',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:8,
publishTime:4,
permalink:'blog/static/',
commentCount:0,
mainCommentCount:0,
recommendCount:0,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'',
hmcon:'1',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}本帖子已过去太久远了,不再提供回复功能。

我要回帖

更多关于 lua break跳出for循环 的文章

 

随机推荐