どうも、ちょげ(@chogetarou)です。
FirstOrDefault()を使ってDictionary(辞書)で指定した条件を満たす要素の値(value)を検索する方法を紹介します。
方法

FirstOrDefault()を使ってDictionary(辞書)に指定した条件を満たす値(value)からキー(Key)を取得するには、Valueプロパティを使います。
まず、System.Linqを導入します。
using System.Linq;
次に、Dictionary(辞書)からFirstOrDefault()を呼び出します。
FirstOrDefault()の引数に、条件式を返すラムダ式を指定します。
条件式では、Dictionaryのキーを引数のKeyプロパティ、値を引数のValueプロパティで表現します。
そして、FirstOrDefault()のValueプロパティにアクセスします。
//item.Keyでキー、item.Valueで値を取得
var result = dict.FirstOrDefault(item => 条件式).Value;
上記のValueプロパティは、条件式でTrueを返した要素の値を取得します。
使用例
using System;
using System.Linq;
using System.Collections.Generic;
public class Sample
{
public static void Main()
{
Dictionary<string, int> numbers = new Dictionary<string, int>()
{
{ "one", 1 },
{ "two", 2 },
{ "three", 3 },
{ "four", 4 },
{ "five", 5 },
};
var result = numbers.FirstOrDefault(item => item.Value % 2 == 0).Value;
Console.WriteLine(result);
}
}
出力:
2
コメント