c# - شرح - foreach php




كيف يمكنني تخطي تكرار حلقة `foreach`؟ (5)

أسلوب آخر هو تصفية باستخدام LINQ قبل تنفيذ الحلقة:

foreach ( int number in numbers.Where(n => n >= 0) )
{
    // process number
}

في Perl يمكنني تخطي a foreach (أو أي حلقة) التكرار مع next; أمر.

هل هناك طريقة لتخطي التكرار والقفز إلى الحلقة القادمة في C #؟

 foreach (int number in numbers)
 {
     if (number < 0)
     {
         // What goes here to skip over the loop?
     }

     // otherwise process number
 }

استخدم العبارة continue:

foreach(object o in mycollection) {
     if( number < 0 ) {
         continue;
     }
  }

نهج آخر باستخدام linq هو:

foreach ( int number in numbers.Skip(1))
{   
    // process number  
}

إذا كنت تريد تخطي الأول في عدد من العناصر.

أو استخدم .SkipWhere إذا كنت تريد تحديد شرط .SkipWhere .


يمكنك أيضًا قلب اختبارك إذا كان:


foreach ( int number in numbers )
{
     if ( number >= 0 )
     {
        //process number
     }
 }

foreach ( int number in numbers )
{
    if ( number < 0 )
    {
        continue;
    }

    //otherwise process number
}




loops