我想通过使用字符串找到一个字典,以便将其复制到一个新字典中 - 看起来应该很简单,但我不确定语法。
基本上只是:
// the object's myName corresponds to an existing dictionary
string stringdic = myName;
// here's where I try to create a new dictionary containing the values of the existing dictionary
Dictionary<string, int> mySkills = new Dictionary<string, int>(myName);
这里的目标只是创建一个具有给定字符串作为其“名称”的对象,并从名称中知道它应该使用哪一组字典 - 例如,如果myName = Bob,我想访问这个剧本中的字典鲍勃。
因此,引用预先存在的字典以获取其键/值的其他方式也将起作用。速度不是一个大问题,但我想保持代码简单。谢谢!
答案 0 :(得分:5)
这是你如何做词典词典:
var persons = new Dictionary<string, Dictionary<string, int>>
{
{ "Jeremy", new Dictionary<string, int> { { "age", 20 }, { "height_cm", 180 } } },
{ "Evan", new Dictionary<string, int> { { "age", 18 }, { "height_cm", 167 } } },
};
Dictionary<string, int> x = persons["Jeremy"];
x["age"] = 34;
答案 1 :(得分:2)
如果您需要能够使用字符串查找字典,则可以使用字典词典,例如:
using X = Dictionary<string, int>;
var all = new Dictionary<string, X>();
X mySkills = all[myName];