Enumerable.SingleOrDefault(TSource) メソッド (IEnumerable(TSource), Func(TSource, Boolean)) (System.Linq)
指定された条件を満たす、シーケンスの唯一の要素を返します。そのような要素が存在しない場合、既定値を返します。複数の要素が条件を満たす場合、このメソッドは例外をスローします。
ソースコード
using System; using System.Linq; namespace LinqSample { class Program { static void Main(string[] args) { int[] numbers = new int[] { 1, 2, 3, 4, 5 }; // 該当する要素がない場合は既定値。 { int number = numbers.SingleOrDefault(n => 5 < n); Console.WriteLine(number); } // 1つの要素に該当する。 { int number = numbers.SingleOrDefault(n => 4 < n); Console.WriteLine(number); } // 複数の要素に該当する。 try { int number = numbers.SingleOrDefault(n => 3 < n); } catch (Exception) { Console.WriteLine("Error"); } Console.ReadKey(); } } }