Methods
First()/FirstOrDefault() vs Single()/SingleOrDefault()
First()/FirstOrDefault() vs Single()/SingleOrDefault()Single() / SingleOrDefault()
First() / FirstOrDefault()
List<int> numbers = new List<int>{1, 3, 5};
// Throws an exception because there are no matching element in the list
Console.WriteLine(numbers.Single(n => n % 2 == 0));
Console.WriteLine(numbers.First(n => n % 2 == 0));
// Returns 0 (default for int)
Console.WriteLine(numbers.SingleOrDefault(n => n % 2 == 0));
Console.WriteLine(numbers.FirstOrDefault(n => n % 2 == 0));Last updated