0

在 php 中:

continue 接受一个可选的数字参数,该参数告诉它应该跳到末尾的封闭循环的层数。

for ($i = 1; $i <= $countArray - 2; $i++) {
     for ($j = $i+1; $j <= $countArray - 1; $j++) {         
    for ($k = $j+1; $k <= $countArray; $k++) {
            if(condition){
             # found 
             continue 3;
            }
        }
   }
 }

c# 中的等价物是什么?

一个简单的方法来做到这一点?

4

2 回答 2

3

如果你真的想这样做,你可以使用 goto 语句:

        for (int i = 0; i < 10; i++)
        {
            Level1:

            for (int j = 0; j < 10; j++)
            {

            Level2:

                for (int k = 0; k < 10; k++)
                {
                    if (k < 5)
                    {
                        goto Level1;
                    }

                    if ( k == 7)
                    {
                        goto Level2;
                    }
                }
            }
        }
于 2010-11-20T18:55:27.757 回答
1

goto 可用于跳出深度嵌套的循环。您的 PHP 代码的 AC# 等效项可能是:

for (int i = 1; i <= countArray - 2; i++) {
  for (int j = i+1; j <= countArray - 1; j++) {         
    for (int k = j+1; k <= countArray; k++) {
      if(condition){
        // found
        goto Found;
      }
    }
  }
}

Found:
  Console.WriteLine("Found!");
于 2010-11-20T18:54:58.290 回答