我正在寻找一种方法来定义字典以供重用.即.我可以创建字典对象,而不必使用我想要的值填充它.
这是我目前的情况(注意代码没有经过测试,只是示例)
public Dictionary<string, string> NewEntryDictionary()
{
Dictionary<string, string> dic = new Dictionary<string, string>();
// populate key value pair
foreach(string name in Enum.GetNames(typeof(Suits))
{
dic.Add(name, "");
}
return dic;
}
Run Code Online (Sandbox Code Playgroud)
最终结果应该是具有预定义键集的新字典对象.但我想避免这样做.
你是否关心你编写的代码量或者它的效率并不是很清楚.从效率的角度来看,它很好 - 它是O(N),但如果你用N个条目填充字典,这很难避免.
你可以使用LINQ来缩短源代码:
public Dictionary<string, string> NewEntryDictionary()
{
return Enum.GetNames(typeof(Suits)).ToDictionary(name => name, name => "");
}
Run Code Online (Sandbox Code Playgroud)
当然,这不会更有效......它只是更短的代码.
| 归档时间: |
|
| 查看次数: |
689 次 |
| 最近记录: |