A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

©   /  2011-8-23 10:25  /  1554 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

黑马网友  发表于 2011-8-23 11:00:03
楼主
应该是一个标志块,起标志的作用,标识最外面的while循环。
回复 使用道具 举报
黑马网友  发表于 2011-8-23 14:12:54
沙发
[b]Outer:[/b] 和 [b]Inner:[/b] 是一种标签(这种标签是一个合法的名称加上冒号组成的),一般要跟break关键字配合使用,Java里这种标签只能标记在循环语句之前才起作用。标签相当于是一个循环的小名,就像你上面的break Inner,由于Inner是放在第二个循环之前所以Inner就好像第二个循环,所以break Inner就是跳出Inner代表的循环。

评分

参与人数 1技术分 +2 收起 理由
wangfayin + 2 回答的好!

查看全部评分

回复 使用道具 举报
黑马网友  发表于 2011-8-24 00:02:17
藤椅
这就是老师讲的跳出多重循环的书面方法啊,不过张老师不建议这样用,你可以参考一下就业培训面试题

4、在JAVA中如何跳出当前的多重嵌套循环?
在Java中,要想跳出多重循环,可以在外面的循环语句前定义一个标号,然后在里层循环体的代码中使用带有标号的break 语句,即可跳出外层循环。例如,
ok:
        for(int i=0;i<10;i++)
        {
                for(int j=0;j<10;j++)
                {
                        System.out.println(“i=” + i + “,j=” + j);
                        if(j == 5) break ok;
                }
        }
另外,我个人通常并不使用标号这种方式,而是让外层的循环条件表达式的结果可以受到里层循环体代码的控制,例如,要在二维数组中查找到某个数字。
int arr[][] = {{1,2,3},{4,5,6,7},{9}};
boolean found = false;
for(int i=0;i<arr.length && !found;i++)
        {
                for(int j=0;j<arr[i].length;j++)
                {
                        System.out.println(“i=” + i + “,j=” + j);
                        if(arr[i][j]  == 5)
                        {
                                found = true;
                                break;
                        }
                }
        }

评分

参与人数 1技术分 +3 收起 理由
wangfayin + 3 回答的很好!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马