Find () und Where (). FirstOrDefault ()

Sehe ich oft Menschen mit Where.FirstOrDefault() zu tun, eine Suche und schnappen Sie sich das erste element. Warum nicht einfach Find()? Ist es ein Vorteil zu den anderen? Ich konnte nicht sagen, einen Unterschied.

namespace LinqFindVsWhere
{
    class Program
    {
        static void Main(string[] args)
        {
            List<string> list = new List<string>();
            list.AddRange(new string[]
            {
                "item1",
                "item2",
                "item3",
                "item4"
            });

            string item2 = list.Find(x => x == "item2");
            Console.WriteLine(item2 == null ? "not found" : "found");
            string item3 = list.Where(x => x == "item3").FirstOrDefault();
            Console.WriteLine(item3 == null ? "not found" : "found");
            Console.ReadKey();
        }
    }
}

InformationsquelleAutor der Frage KingOfHypocrites | 2012-02-17

Schreibe einen Kommentar