コガネブログ

平日更新を目標にUnityやC#、Visual Studioなどのゲーム開発アレコレを書いていきます

【C#】Dictionary に既に指定したキーが存在する場合は代入する Add 関数の拡張メソッド

ソースコード

using System.Collections.Generic;

public static class DictionaryExtensions
{
    public static void AddOrReplace<TKey, TValue>
    (
        this Dictionary<TKey, TValue> self  , 
        TKey                          key   , 
        TValue                        value
    )
    {
        self[ key ] = value;
    }
}

使い方

dict.AddOrReplace( 25, "ピカチュウ" );

備考

var table = new Dictionary<int, string>
{
    { 1 , "フシギダネ" },
    { 2 , "フシギソウ" },
    { 3 , "フシギバナ" },
};

table[ 1 ] = "ヒトカゲ";

Dictionary では、既に指定したキーが存在する場合でも
上記のような記述で値の上書きが可能です
指定したキーがまだ存在しない場合でも、問題なく動作します

関連記事