[C#] foreach의 if 문을 기반으로하는 목록의 다음 항목으로 이동합니다.


Answers

continue; 사용하십시오 continue; break; 대신 break; 포함 된 코드를 더 이상 실행하지 않고 루프의 다음 반복을 입력합니다.

foreach (Item item in myItemsList)
{
   if (item.Name == string.Empty)
   {
      // Display error message and move to next item in list.  Skip/ignore all validation
      // that follows beneath
      continue;
   }

   if (item.Weight > 100)
   {
      // Display error message and move to next item in list.  Skip/ignore all validation
      // that follows beneath
      continue;
   }
}

공식 문서는 여기 에 있지만 색을 많이 추가하지는 않습니다.

Question

C #을 사용하고 있습니다. 항목 목록이 있습니다. foreach 사용하여 각 항목을 반복합니다. 내 foreach 내에서 몇 가지 물건을 확인하는 if 문이 많이 있습니다. 이러한 if 문 중 하나라도 false를 반환하면 해당 항목을 건너 뛰고 목록의 다음 항목으로 이동하려고합니다. 뒤에 오는 모든 if 문은 무시해야합니다. 나는 휴식을 시도했지만 휴식은 전체 foreach 문을 종료합니다.

이것은 내가 현재 가지고있는 것입니다 :

foreach (Item item in myItemsList)
{
   if (item.Name == string.Empty)
   {
      // Display error message and move to next item in list.  Skip/ignore all validation
      // that follows beneath
   }

   if (item.Weight > 100)
   {
      // Display error message and move to next item in list.  Skip/ignore all validation
      // that follows beneath
   }
}

감사




break 대신 continue 를 사용하십시오. :-)




이 시도:

foreach (Item item in myItemsList)
{
  if (SkipCondition) continue;
  // More stuff here
}



continue 키워드는 사용자가 수행 한 작업을 처리합니다. breakforeach 루프에서 빠져 나올 것이므로 여러분은 그것을 피하고 싶을 것이다.




다음을 사용해야합니다.

continue;