这是KeyValuePair中foreach的任何Next函数吗?
foreach (KeyValuePair<string, List<class>> KPV in dic )
{ }
或唯一的解决方案是使用带计数器的传统for循环
答案 0 :(得分:3)
表示键和值的集合。
在遍历字典时,您使用的是KeyValuePair Structure,它代表一对密钥(此处为string
)和值(此处为List<T>
)。因此,如果打算在每对中循环List<T>
,则需要访问KeyValuePair.Value Property:
foreach (KeyValuePair<string, List<object>> KPV in dic)
{
foreach (object v in KPV.Value)
{
}
}
此外,我将List<class>
替换为List<object>
,因为绝对class
不是类型的可能名称。
如果每个KeyValuePair.Key Property值都不重要,您可以遍历Dictionary.Values Property:
foreach (List<object> values in dic.Values)
{
foreach (object v in values)
{
}
}
答案 1 :(得分:1)
KeyValuePair<TKey, TValue>
个对象可以枚举,如果它们位于Dictionary<TKey, TValue>
个对象中。
在Dictionary
内,您可以使用Dictionary.Enumerator
结构,该结构公开Dictionary.Enumerator.MoveNext()
方法,该方法可能是您正在寻找的“下一步”功能。
如果您能在foreach
代码块中告诉我们您打算做什么,那就太好了。