黑马程序员技术交流社区

标题: 在JAVA中如何跳出当前的多重嵌套循环? [打印本页]

作者: 何万县    时间: 2012-4-22 16:37
标题: 在JAVA中如何跳出当前的多重嵌套循环?
这个问题,帮帮帮我
作者: 真真姐    时间: 2012-4-22 16:43
本帖最后由 杨国祯 于 2012-4-22 16:53 编辑

使用break,这个是跳出当前的循环
使用return的话是直接跳出

我想你遇到的问题应该是在写代码的时候,需要用到循环,但是一旦满足了相关的情况,就停止循环!
如果是这样的话我给你提供一个方法
for(...;decide .. ; .){
           ……(多重循环头部)
           while(decide){
               if(条件3){//条件3true,则把decide设为false,同时跳出
                   decide=false;//改变decide
                   break;//跳出当前循环
               }
           }
       }

作者: 张文建    时间: 2012-4-22 16:43
跳出外部循环的方式主要有两种:
1。在外部循环外定义一个标记
2。在循环最外定义一个boolean的变量,内层循环去改变这个boolean的值,根据这个值来判断是否跳出
作者: 乞文超    时间: 2012-4-22 16:48
1、可以在外面的循环语句前定义一个标号,然后在里层循环体的代码中使用带有标号的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;

         }

   }

2、让外层的循环条件表达式的结果可以受到里层循环体代码的控制,例如,要在二维数组中查找到某个数字。

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;

               }

         }

   }


作者: 赵嘉男    时间: 2012-4-22 17:01
跳出多重循环,可以在外面的循环语句前定义一个标号,然后在里层循环体的代码中使用带有标号的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.length;j++)
{
System.out.println(“i=” + i + “,j=” + j);
if(arr[j] == 5)
{
found = true;
break;
}
}
}

作者: 黑马张平    时间: 2012-4-22 18:51
跳出循环,用 break,和 continue。
作者: 马东华    时间: 2012-4-22 19:54
用break可以跳出啊
作者: 成吉思汗    时间: 2012-4-22 21:47
关于跳出,这里分三种情况:
第一:使用关键字break。break是跳出循环,继续执行循环下面的代码。
第二:使用关键字return.return不仅是跳出循环,而且return以后的代码全都不执行。
第三:使用continue关键字。continue是结束本次循环,继续回到循环体内继续执行。
可根据看书的需求来决定使用哪一个。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2