Enumerable.DefaultIfEmpty(TSource) メソッド (IEnumerable(TSource), TSource) (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 }; // 1〜5の合計 Console.WriteLine(numbers.DefaultIfEmpty().Sum()); int[] emptyNumbers = new int[] { }; // intのデフォルト値0 Console.WriteLine(emptyNumbers.DefaultIfEmpty().Sum()); // 指定されたデフォルト値-1 Console.WriteLine(emptyNumbers.DefaultIfEmpty(-1).Sum()); Console.ReadKey(); } } }