我有一个字典,并在上面添加了一些元素。
Dictionary<string, string> d = new Dictionary<string, string>();
d.Add("Content","Level0");
d.Add("gdlh","Level1");
d.Add("shows","Level2");
d.Add("ytye","Level0");
在 C# 中,字典使元素保持自然顺序。但是我现在想将这些值从最后一个迭代到第一个(即反向顺序)。
首先我想阅读ytye,然后是节目,gdlh,最后是内容。
请指导我摆脱这个问题...
只需使用 Linq 扩展方法 反向
例如
foreach( var item in d.Reverse())
{
...
}
使用 LINQ 反向,但请注意,它不会就地反转:
var reversed = d.Reverse();
但请注意,这不是一个排序词典,所以首先不一定保证顺序。也许你想要OrderByDescending
?
也许OrderByDescending
在键上。喜欢这个:
d.OrderByDescending (x =>x.Key)
Foreach
像这样:
foreach (var element in d.OrderByDescending (x =>x.Key))
{
}
它在 Linq: d.Reverse()
中可用