继续并扩大范围

HCL*_*HCL 7 .net c#

是否有一个的可能性continuebreak具有比当前运行的环更大的范围?
在下面的例子中,我希望在expr为true 时继续外部for循环,尽管它在内部for循环中被调用,因此既不执行[some inner code]也不[some outer code]执行.

for(int outerCounter=0;outerCounter<20;outerCounter++){
   for(int innerCounter=0;innerCounter<20;innerCounter++){
      if(expr){
         [continue outer];    // here I wish to continue on the outer loop     
      }
      [some inner  code]
   }
   [some outer code]
}
Run Code Online (Sandbox Code Playgroud)

在上面

Jon*_*eet 10

goto如果你绝对必须,你可以使用.但是,我通常采用以下两种方法之一:

  • 使内部循环返回一个单独的方法bool,所以我可以从它返回并指出外部循环应该做什么(中断,继续或执行循环体的其余部分)
  • 保持一个单独的bool标志,其内循环之前设置,可被修改的内部循环,然后检查内环

在这些方法中,我通常更喜欢"提取方法"方法.