web-dev-qa-db-ja.com

C#の辞書のキーの値を更新するにはどうすればよいですか?

私は次のコードをc#に持っています。基本的には、いくつかのキーとその値を持つ単純な辞書です。

Dictionary<string, int> dictionary =
    new Dictionary<string, int>();
dictionary.Add("cat", 2);
dictionary.Add("dog", 1);
dictionary.Add("llama", 0);
dictionary.Add("iguana", -1);

キー 'cat'を新しい値5で更新します。
どうすればこれができますか?

20
Ahsan Ashfaq

試しましたか

dictionary["cat"] = 5;

:)

更新

dictionary["cat"] = 5+2;
dictionary["cat"] = dictionary["cat"]+2;
dictionary["cat"] += 2;

存在しないキーに注意してください:)

34
J0HN

次の簡単な関数を試して、存在しない場合は辞書項目を追加するか、存在する場合は更新します:

    public void AddOrUpdateDictionaryEntry(string key, int value)
    {
        if (dict.ContainsKey(key))
        {
            dict[key] = value;
        }
        else
        {
            dict.Add(key, value);
        }
    }

これはdict [key] = valueと同じです。

18
cubski

インデクサーを使用して直接更新するだけです:

dictionary["cat"] = 3
0
yamen

辞書はキーと値のペアです。キーをキャッチ

dic["cat"] 

そしてその値を

dic["cat"] = 5
0
Nikhil Agrawal