C# перейти к следующему элементу в списке на основе оператора if в foreach
Я использую C#. У меня есть список. Я перебираю каждый элемент с помощью foreach. Внутри моего foreach У меня много if заявления проверять некоторые вещи. Если любой из этих if операторы возвращает false, то я хочу, чтобы пропустить этот элемент и перейти к следующему элементу в списке. Все!--3--> инструкции должны быть проигнорированы. Я попытался использовать перерыв, но перерыв выходит из всего 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
}
}
спасибо
5 ответов
использовать continue; вместо 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;
}
}
официальные документы здесь, но они не очень цвет.
попробуйте это:
foreach (Item item in myItemsList)
{
if (SkipCondition) continue;
// More stuff here
}
на continue ключевое слово сделает то, что вы после. break выход из foreach цикл, поэтому вы захотите избежать этого.