如何循环遍历这个字典
本文关键字:遍历 字典 循环 何循环 | 更新日期: 2023-09-27 18:10:34
我已经像这样声明了一个字典:
Dictionary<string, KeyValuePair<string, string>> dc = new Dictionary<string, KeyValuePair<string, string>>();
怎么循环呢?我想要这样的东西,所以我创建了这个字典:
name1oldValue1newValue1
name2oldValue2newValue2
…
可以像这样循环使用
foreach (var pair in dc)
{
string name = pair.Key;
string oldValue = pair.Value.Key;
string newValue = pair.Value.Value;
// use the values
}
但是我觉得你用错了工具。在我看来,您确实需要继续并定义一个适当的类来保存名称和值,然后只使用该类的List<T>
。
foreach( KeyValuePair<string, string> kvp in dc )
{
Console.WriteLine("Key = {0}, Value = {1}", kvp.Key, kvp.Value);
}
当你循环一个字典时,你使用的KeyValuePair是泛型的。由于您的字典包含字符串形式的键和字符串形式的值,因此此字典也将同时接受字符串。
可以用kvp.Key
访问键,用kvp.Value
访问值。
对于您的示例,您正在使用包含KeyValuePair值的string Dictionary。所以,你可以用
打印出你想要的效果foreach( KeyValuePair<string, KeyValuePair<string,string>> kvp in dc )
{
Console.WriteLine(kvp.Key + " " + kvp.Value.Key + " "+ kvp.Value.Value);
}