【发布时间】:2013-08-20 06:06:07
【问题描述】:
如果字符串键尚未使用,我将生成无数的 对并将每一对存储在 .NET 字典中。
在效率方面,这样做会更好吗?
try { Dict.Add(key, val); } catch (ArgumentException) {} //blind attempt
还是这个?
if (!Dict.ContainsKey(key)) { Dict.Add(key, val); } //smart attempt
盲目尝试在 dup 键上触发异常;智能尝试点击字典索引两次 - 一次检查,然后再次添加。 (在我的特殊情况下,大约 10% 的时间都有 dup 键。)
有谁知道一种方法是否应该优于另一种方法?
【问题讨论】:
-
你真的很想测试它。我会 guess 聪明的方式工作得更快,但这只是一个猜测。这也取决于“亿万”到底是什么。