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

© a80C51 中级黑马   /  2015-8-27 15:54  /  397 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. public class MyLoops
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 System.out.println("no continue and break");
  6.                 for(int i = 0;i<3;i++)
  7.                 {
  8.                         for(int j = 0; j<4;j++)
  9.                         {
  10.                                 System.out.println("i="+i+";j="+j);
  11.                         }       
  12.                 }
  13.                
  14.                 System.out.println("only continue");
  15.                 for(int i = 0;i<3;i++)
  16.                 {
  17.                         for(int j = 0; j<4;j++)
  18.                         {
  19.                                 if(j == 2)
  20.                                         continue;
  21.                                 System.out.println("i="+i+";j="+j);
  22.                         }       
  23.                 }
  24.                
  25.                 System.out.println("continue with label");
  26.                 outer:
  27.                 for(int i = 0;i<3;i++)
  28.                 {
  29.                         for(int j = 0; j<4;j++)
  30.                         {
  31.                                 if(j == 2)
  32.                                         continue outer;
  33.                                 System.out.println("i="+i+";j="+j);
  34.                         }       
  35.                 }
  36.                
  37.                 System.out.println("only break");
  38.                 for(int i = 0;i<3;i++)
  39.                 {
  40.                         for(int j = 0; j<4;j++)
  41.                         {
  42.                                 if(j == 2)
  43.                                         break;
  44.                                 System.out.println("i="+i+";j="+j);
  45.                         }       
  46.                 }
  47.                
  48.                 System.out.println("break with label");
  49.                 outer:
  50.                 for(int i = 0;i<3;i++)
  51.                 {
  52.                         for(int j = 0; j<4;j++)
  53.                         {
  54.                                 if(j == 2)
  55.                                         break outer;
  56.                                 System.out.println("i="+i+";j="+j);
  57.                         }       
  58.                 }
  59.                
  60.                 System.out.println("only return");
  61.                 for(int i = 0;i<3;i++)
  62.                 {
  63.                         for(int j = 0; j<4;j++)
  64.                         {
  65.                                 if(j == 2)
  66.                                         return;
  67.                                 System.out.println("return is done!");
  68.                         }       
  69.                 }
  70.         }
  71. }
复制代码

1,
break,本意打破,突破之意,故在循环中,有结束当前循环之意;
continue,本意继续之意,故在循环中,有忽略本次循环剩下语句,提前结束本次循环;
return,本意返回,虽不是专门用于循环,但其可以用于结束方法,故遇到return,该方法将会被结束。
2,
break+标签,则会结束标签所指的循环;
continue+标签,则会忽略标签所指循环中当次循环剩下的语句。
3,
break、continue及return语句之后不能再添加语句,否则会报 “错误: 无法访问的语句”

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马