【问题标题】:Finding a C# dictionary using a string使用字符串查找 C# 字典
【发布时间】:2013-04-30 09:27:35
【问题描述】:

我想通过使用字符串来查找字典,以便将其复制到新字典中——看起来应该很简单,但我不确定语法。

基本上就是这样:

    // 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,我想访问此脚本中的字典 Bob。

因此,引用预先存在的字典以获取其键/值的其他方式也可以工作。速度不是一个大问题,但我想保持代码简单。谢谢!

【问题讨论】:

    标签: c# dictionary


    【解决方案1】:

    以下是制作字典词典的方法:

    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;
    

    【讨论】:

    • 谢谢,这非常适合我的工作。
    【解决方案2】:

    如果您需要能够使用字符串查找字典,您可以拥有一个字典字典,例如:

    using X = Dictionary<string, int>;
    
    var all = new Dictionary<string, X>();
    
    X mySkills = all[myName];
    

    【讨论】:

      猜你喜欢
      • 2013-07-28
      • 2012-12-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-13
      • 1970-01-01
      相关资源
      最近更新 更多