次のような辞書があるとします。
var dic = new Dictionary<Int32, Int32>();
キーは ID で、値はカウントです。次に、新しいキーを追加します。これは、次の行で完全に正常に機能します。
dic[1] = 1; //adding ID 1, Count 1 to the current Dictionary
次の値を持つ整数のリストがあると仮定します。
var ids = new List<int> {1, 2, 3 , 1, 2};
次の内容の辞書を取得したい場合:
[1, 2] ==> (ID 1, Count 2)
[2, 2] ==> (ID 2, Count 2)
[3, 1] ==> (ID 3, Count 1)
明らかな解決策は次のとおりです。
foreach (var id in ids)
{
dic[id]++;
}
しかし、これはKeyNotFoundException
. したがって、明らかに演算子+=
は辞書ではサポートされていません。
私はすでにこの問題への回答を添付しました。これを達成するためのより良い方法はありますか?