C# LinqのFirst実行時に値がない場合にデフォルト値を返す

C# LinqのFirst実行時に値がない場合にデフォルト値を返す

C#で、Linqのfirst実行時に値がない場合にデフォルト値を返すサンプルコードを記述してます。

環境

  • OS windows10 pro 64bit
  • Microsoft Visual Studio Community 2019 Version 16.7.1

Linqのfirst実行時に値がない場合にデフォルト値を返す

エラーを出さずにデフォルト値を返すには、Linqの「FirstOrDefault」を使用することで可能です。

// 配列を用意
int[] num = new int[] { 1, 3, 5 };       

// 先頭の値を取得
num.FirstOrDefault(v => v % 2 == 0); // 存在しないので「0」が返る

以下は、リスト内にある値に存在しない条件を指定して、結果を表示するだけのコードとなります。

using System;
using System.Collections.Generic;
using System.Linq;

namespace testapp
{
    class Program
    {
        static void Main(string[] args)
        {

            // Listを用意
            var list = new List<int> { 1, 3, 5 };

            Console.WriteLine(list.FirstOrDefault(v => v % 2 == 0));

            System.Console.ReadKey();

        }
    }
}

実行結果