我目前正在努力创建一本字典。我想创建它以便它可以在多种情况下使用。但是,这些情况因键和值类型而异。因此,当您通常这样做时:
Dictionary<int, string> Something = new Dictionary<int, string>();
Run Code Online (Sandbox Code Playgroud)
我想做类似的事情:
Dictionary<variable1, variable2> ..............
Run Code Online (Sandbox Code Playgroud)
Variable1 是什么并不重要。它可以是一个字符串,存储“string”或“int”作为值。我还可以使用variable1.getType()来确定类型。无论哪种方式都适合我。但我上面的做法是错误的。一定有另一种方法可以根据变量设置键和值类型......对吗?
有些东西突然进入我的脑海,使用 if 来检查类型是什么,并根据类型使字典使用该类型。但随着类型的增多,将会有很多如果,我觉得必须有更好的方法。
搜索对我没有多大帮助。好吧,我学到了一些其他东西,但没有解决我的问题。在每种情况下,字典TKey都是TValue手动设置的。虽然我想使用从某个来源获取的变量来设置它们。
一定有另一种方法可以根据变量设置键和值类型......对吗?
就在这里。您可以创建一个创建字典的辅助方法,例如:
public static Dictionary<K, V> CreateDictionaryFor<K, V>(K key, V value)
{
return new Dictionary<K, V>();
}
Run Code Online (Sandbox Code Playgroud)
然后,您可以将它与variable1and一起使用variable2:
var dictionary = CreateDictionaryFor(variable1, variable2);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4769 次 |
| 最近记录: |