zoukankan      html  css  js  c++  java
  • 如何在多层循环中跳出循环呢?

    C语言里有goto可以进行任意跳转,可是不论是在C还是在JAVA中goto都是不被提倡的,C语言有时候必须用goto来跳出外层循环,但是java中可以使用标号和break搭配进行外层循环跳出。这种标号在for、while、do..while都可以使用。

    在for中进行使用:

                    outer:for(int i=1;i<5;i++)
    		{
    			inner:for(int j=1;j<6;j++)
    			{
    				System.out.println("i="+i);
    				break outer;
    			}
    		}//在for关键字前面设置标号,break后面跟着哪个标号就会跳出哪层循环,这里面break后面什么都不加则是默认跳出最内层循环

    在while中进行使用

    whilejump: while(x<=5)
    		{
    			System.out.println("x="+x);
    			x++;
    			System.out.println("x="+x);
    			break whilejump;
    		}

    在do..while中进行使用:

    dojump:do
    		{
    			System.out.println("y="+y);
    			y++;
    			System.out.println(y);
    			break dojump;
    		}
    		while(y<5);
    其中的标号都需要放在关键字的前面。

    除了用标号,我还发现其他程序员朋友有用变量的作用域特性进行外层循环跳转,例如以下两个语句:

    for (int i = 0; i < 10; i++) {
    			boolean flag = false;
    			System.out.println("外部部===========" + i);
    			for (int j = 0; j < 5; j++) {
    				System.out.println("内部===========" + j);
    				if (j == 3) {
    					flag = true;
    					break;
    				}
    			}
    			if (flag) {
    				break;
    			}
    		}


    for (int i = 0; i < 4; i++) {
    			for (int j = 0; j < 4; j++) {
    				System.out.println(i + "||" + j);
    				if (i == 2 && j == 2) {
    					j = 5;
    					i = 5;
    				}
    			}
    		}

    1、一般的break会中断并跳出当前循环


    2、带标签的break会中断并跳出标签所指的循环

  • 相关阅读:
    android adb常用命令
    weblogic 优化设置 http://wenku.baidu.com/view/c42e7a5bbe23482fb4da4cf2.html
    Ajax+json实现菜单动态级联
    浏览器兼容性
    登录相关
    Java 日期处理
    QBC分页查询
    WebService
    MD5加密
    JSON与JAVA数据的转换
  • 原文地址:https://www.cnblogs.com/JSD1207ZX/p/9386249.html
Copyright © 2011-2022 走看看