Quaerite, et invenietis

Eine von mir sehr häufig genutzt Klasse aus dem .NET-Framework ist die generische Liste System.Collections.Generic.List<T>. Allerdings bin ich es leid immer eine for oder foreach Schleife schreiben zu müssen, um ein bestimmtes Item aus der Liste zu finden.

Für einen solchen Fall bietet die Klasse die Methode Find(Predicate<T> match).

Ab .NET 3.5 ist diese Methode auf eine sehr schöne/kurze Schreibweise nutzbar. Mit Hilfe von einem Lambda-Ausdruck.

List<Person> myList = new List<Person>();
Person foundPerson = myList.Find(p => p.Vorname.Equals("Nils"));

p ist in dem Fall ein Item in der Liste und wird an das delegate p.Vorname.Equals(„Nils“) übergeben. Dies gibt dann einen boolschen Wert zurück. Wenn true, dann ist es das gesuchte Item und das Item wird zurückgegeben.

Die immer wieder gleich Schleifen haben so ein Ende 🙂

„Quaerite, et invenietis“ weiterlesen