在字典中查找另一个字典中的值

时间:2018-06-01 03:29:13

标签: c# dictionary

我有一个字典变量,看起来像这样 -

Dictionary<string, Dictionary<int, int>> newIds;

我想使用我拥有的密钥搜索内部字典的值。 假设外部字典的键是 NAME (字符串),内部字典的键是 1 (int)。我想使用这些键搜索内部字典的值。 我怎样才能做到这一点?任何帮助都将受到高度赞赏。

1 个答案:

答案 0 :(得分:1)

您需要执行以下操作:

bool found = TryGet(newIds, "Name", 1, out int result);

public bool TryGet(Dictionary<string, Dictionary<int, int>> dicts, string name, int num, out int val)
{
    val = -1;
    if (dicts.TryGetValue(name, out Dictionary<int, int> dict))
    {
        if (dict.TryGetValue(num, out int res))
        {
            val = res;
            return true;
        }
        return false;
    }
    return false;
}