コガネブログ

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

【C#】1 つのキーに対して複数の値を登録できる Dictionary を実装する

ソースコード

使い方

var m = new MultiDictionary<string, string>();

m.Add( "ほのお", "ヒトカゲ" );
m.Add( "ほのお", "リザード" );
m.Add( "ほのお", "リザードン" );
m.Add( "でんき", "ピカチュウ", "ライチュウ" );

m.Remove( "でんき", "ライチュウ" );
m.Remove( "ほのお" );

m.Clear();

if ( m.Contains( "でんき", "ピカチュウ" ) )
{
}

if ( m.ContainsKey( "でんき" ) )
{
}

foreach ( var pair in m )
{
    foreach ( var n in pair.Value )
    {
        Debug.Log( pair.Key + ": " + n );
    }
}

foreach ( var key in m.Keys )
{
    Debug.Log( key );
}

foreach ( var value in m.Values )
{
    foreach ( var n in value )
    {
        Debug.Log( n );
    }
}

Debug.Log( m.Count );

通常の Dictionary<TKey, TValue> と違い、
1 つのキーに対して複数の値を登録できます

参考サイト様

関連記事