在内循环中跳过迭代外循环

本文关键字:循环 迭代 | 更新日期: 2023-09-27 18:04:44

我有两个循环,当我在内循环中迭代时,我想根据我的条件跳过外循环的迭代;continue;只跳过内环。任何想法?

foreach (DataRow row in dt.Rows)
 {
                for (int i = 0; i < 6; i++)
                {
                    if (row[i].Equals(DBNull.Value))
                        //skip iteration to outer loop. Go to next row.
                }
 }

在内循环中跳过迭代外循环

如果你想跳出内循环并继续外循环的下一行

  foreach (DataRow row in dt.Rows)
  {
            for (int i = 0; i < 6; i++)
            {
                if (row[i].Equals(DBNull.Value))
                    break;
            }
     }

你可以这样做:

foreach (DataRow row in dt.Rows)
{
    foreach (int i in Enumerable.Range(0, 6).TakeWhile(n => !row[n].Equals(DBNull.Value)))
    {
        // no need for `if` at all now.
    }
}