我有一本这样的字典:
Dictionary<string, List<string>> mydict = new Dictionary<string, List<string>>();
我已经尝试过:
foreach(var value in mydict.Keys)
{
List<string> key
key.Add();
}
我相信这不是获取特定键值的正确方法。
你有一个
Dictionary<string, List<string>>
。字典有一个键和一个值。在您的情况下,键是 string
,值是 List<string>
。
如果你想获取具体键的值,可以使用:
myDict.TryGetValue("TheValueToSearch", out List<string> list)
当键在字典中时,TryGetValue
返回true
。所以你可以这样做:
if (myDict.TryGetValue("TheValueToSearch", out List<string> list))
{
// Do something with your list
}
您可以使用
myDict["TheValueToSearch"]
直接访问列表,但如果密钥不在字典中,则会出现异常。您可以使用 myDict.ContainsKey("TheValueToSearch")
检查是否存在。
迭代所有字典值:
foreach(var key in mydict.Keys)
{
List<string> values = mydict[key];
// Do something with values
}
除此之外,在以字符串作为键的字典的具体情况下,如果您希望该键不区分大小写,则可以使用重载构造函数:
new Dictionary<string, List<string>>(StringComparer.CurrentCultureIgnoreCase)