Po patrząc na MSDN, to wciąż dla mnie jasne, w jaki sposób należy tworzyć prawidłowe orzeczenie korzystania z metody find() w wykazie stosując zmienną składową o T (gdzie T jest klasa)Jak utworzyć dobrego delegata predykatów na Znajdź() coś na mojej liście <T>?
Na przykład:
public class Car
{
public string Make;
public string Model;
public int Year;
}
{ // somewhere in my code
List<Car> carList = new List<Car>();
// ... code to add Cars ...
Car myCar = new Car();
// Find the first of each car made between 1980 and 2000
for (int x = 1980; x < 2000; x++)
{
myCar = carList.Find(byYear(x));
Console.Writeline(myCar.Make + myCar.Model);
}
}
Jak powinien wyglądać mój predykat "byYear"?
(przykład MSDN mówi jedynie o listę dinozaurów i tylko wyszukiwań dla wartości niezmienne „Saurus” - nie pokazuje, jak przekazać wartość do orzecznika ...)
EDIT: Używam VS2005/.NET2.0, więc nie sądzę, że notacja Lambda jest dostępna dla mnie ...
EDIT2: Usunięto "1999" w tym przykładzie, ponieważ mogę chcieć "Znajdź" programowo na podstawie różne wartości. Przykład zmieniono na zakres samochodów od 1980 do 2000 za pomocą pętli for-do.
Poprosiłem podobny [Pytanie] (http://stackoverflow.com/questions/200151/search-for-object-in-generic-list) i uzyskał kilka naprawdę doskonałych odpowiedzi! –