【发布时间】:2011-10-31 06:09:32
【问题描述】:
我正在使用下面的代码在字典中增加或插入一个值。如果我要递增的键不存在,我想将其值设置为 1。
public void IncrementCount(Dictionary<int, int> someDictionary, int id)
{
int currentCount;
if (someDictionary.TryGetValue(id, out currentCount))
{
someDictionary[id] = currentCount + 1;
}
else
{
someDictionary[id] = 1;
}
}
这样做是否合适?
【问题讨论】:
-
你想用这个实现什么?你在解决什么问题?
-
Dictionary 对象并没有真正的“计数”,并且像数组一样“减少”它也没有任何意义。话虽如此,您提供的代码应该可以工作,尽管我认为有更简洁的方法来处理这种情况:检查 Dictionary 对象的内置方法。
-
最好的方法是什么意思?线程安全、更简洁、最快、最易读?
-
@tsul 这个问题刚刚收到了late answer。问题超过五年了,OP已经两年多了。
-
@CodeCaster 是的,现在我明白了。但这个问题是“在 .net 字典中增加元素的最有效方法”的搜索结果中的第一个问题,所以我尝试改进它。
标签: c# dictionary