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

  • Official Android Tips

    Official And

    23 EYLÜL 2009
  • Codecourse

    Codecourse

    3 ŞUBAT 2009
  • Just So

    Just So

    3 HAZİRAN 2007