SORU
24 Temmuz 2009, Cuma


SERİ tarafından listedeki bir öğeyi bulmak?

Burada dizelerin listesindeki bir öğeyi bulmak için basit bir örnek var. Normalde döngü veya anonim temsilci için böyle yapmam kullanın:

int GetItemIndex(string search)
{
   int found = -1;
   if ( _list != null )
   {
     foreach (string item in _list) // _list is an instance of List<string>
     { 
        found  ;
        if ( string.Equals(search, item) )
        {
           break;
        }
      }
      /* use anonymous delegate
      string foundItem = _list.Find( delegate(string item) {
         found  ;
         return string.Equals(search, item);
      });
      */
   }
   return found;
}

SERİ benim için yeni. Eğer ETMENİZ listesinde öğeyi bulmak için kullanabilirsiniz eğer ben merak ediyorum? Nasıl mümkün?

CEVAP
24 Temmuz 2009, Cuma


Bir kaç yolu var (not budeğilliste tamamlandı).

1) Single Tek bir sonuç dönecektir, ama eğer yok ya da birden fazla olabilir ya da olmayabilir) daha bulursa, bir özel durum oluşturur:

string search = "lookforme";
List<string> myList = new List<string>();
string result = myList.Single(s => s == search);

2) Where kriterlerinize uygun olan tüm öğeleri döndürür, bir öğe ile bir IEnumerable alabilirsiniz:

IEnumerable<string> results = myList.Where(s => s == search);

3) First kriterlere uyan ilk öğeyi döndürür:

string result = myList.First(s => s == search);

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Britec09

    Britec09

    4 Mart 2009
  • Chuck Testa

    Chuck Testa

    14 AĞUSTOS 2011
  • ghosti66

    ghosti66

    27 AĞUSTOS 2006