如何跳出多重嵌套循环

    我们都知道跳出一个循环使用break即可。那么如何跳出多重嵌套循环呢,java虽然保留了goto关键字,但是却不支持goto语法。其实我们只需要加一个标识就行了:
   
loop:for (int i = 0; i < 5; i++) {
			for (int j = 0; j < 5; j++) {
				for (int k = 0; k < 5; k++) {
					if(i==1&&i==j&&i==k)
						break loop;					
				}
			}
		}

    其实要跳出多重循环有多种办法,例如让外层循环的条件表达式的结果可以受到里层循环体代码的控制:
   
		boolean flag = true;
		for (int i = 0; i < 5 && flag; i++) {
			for (int j = 0; j < 5; j++) {
				for (int k = 0; k < 5; k++) {
					if(i==1&&i==j&&i==k){
						flag = false;
						break;
					}
				}
			}
		}

    注意:这里的break只是跳出了最里层的循环,当里层的所有循环执行完以后,最外层判断条件不通过时才真正跳出所有循环。
    所以跳出多重循环的方式有多种,但是注意区别,执行效果也许是不一样的。只需记住一种简单的方式即可,比如第一种用标识的办法就很简单且不容易出错。
    原文永久地址: http://jsonliangyoujun.iteye.com/blog/2365308

猜你喜欢

转载自jsonliangyoujun.iteye.com/blog/2365308