簡體   English   中英

向后迭代SortedDictionary的最佳方法是什么?

[英]What is the best way to iterate over a SortedDictionary backwards?

我需要從普通的foreach..循環foreach..字典.. 做到這一點的最佳方法是什么?

更新資料

有一個外部對象正在向我返回SortedDictionary。 “字符串”必須唯一,並引用相應的對象myObject。 我想按“字符串”的字母順序對列表進行排序...相反。

您會建議其他什么目的來達到此目的?

好的Dictionary<K,V>類在內部使用哈希表來存儲其鍵,因此沒有隱含的順序。 添加鍵的順序不會保留,因此實際上沒有任何有意義的方式可以“反向”。

話雖如此,如果您有一個有序的集合(例如List或SortedDictionary) ,則可以使用LINQ Reverse方法來反轉任何序列。

更新資料

為了響應您關於擁有SortedDictionary的更新,請參考我上面鏈接的Enumerable.Reverse方法。 您可以反轉字典(作為KeyValuePair的集合,或者將其Keys屬性作為字符串的集合)。

SortedDictionary<string,object> dictionary = blah;
var keyValuePairs = dictionary.Reverse();
var keys = dictionary.Keys.Reverse();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM