SORU
19 EYLÜL 2011, PAZARTESİ


Foreach döngü, döngünün son yineleme olduğunu belirlemek

foreach bir döngü var ve son Madde List, örneğin seçilmiş olduğunda biraz mantık yürütmek gerekir:

 foreach (Item result in Model.Results)
 {
      //if current result is the last item in Model.Results
      //then do something in the code
 }

Son döngü ve sayaç için kullanmadan hangi öğrenebilir miyim?

CEVAP
19 EYLÜL 2011, PAZARTESİ


Sadece son öğe ile bir şeyler yapmak gerek (bir şey . aksine eğer ^strong>farklıson öğesinden sonra SERİ kullanarak yardımcı olacaktır burada:

Item last = Model.Results.Last();
// do something with last

Eğer bir şey, son öğe ile farklı yapmak gerekiyorsa o zaman bir şey gibi ihtiyacınız olacak:

Item last = Model.Results.Last();
foreach (Item result in Model.Results)
{
    // do something with each item
    if (result.Equals(last))
    {
        // do something different with the last item
    }
    else
    {
        // do something different with every item but the last
    }
}

Muhtemelen bunu söyleyebilirsin emin olmak için özel bir karşılaştırıcısı yazmak lazım ama madde Madde Last() tarafından döndürülen aynı oldu.

Bu yaklaşım Last topluluk içinde yineleme için olabilir gibi dikkatli kullanılmalıdır. Bu, eğer büyük olursa küçük koleksiyonları için bir sorun olabilir, olmasa da performans etkileri olabilir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ASUS North America

    ASUS North A

    12 AĞUSTOS 2008
  • Chuck Testa

    Chuck Testa

    14 AĞUSTOS 2011
  • laptopmag

    laptopmag

    25 Ocak 2008