C#Dictionary中的下一个键

Bet*_*moo 7 .net c# dictionary enumerator

如何Enumerator使用密钥获取-Sorted-字典中的项目?

注意:GetEnumerator()获取Enumerator第一个元素..

但我需要Enumerator使用给定的密钥来获取元素,MoveNext()以便例如使用... 来访问下一个元素...

编辑:或者访问下一个元素的方法......

编辑:我更喜欢const time方法......

谢谢

Jan*_*ing 8

var enumerator = dictionary.Keys.SkipWhile(k => k != myKey)
Run Code Online (Sandbox Code Playgroud)

myKey是你要找的钥匙.如果要对键进行排序,可以使用OrderBy扩展方法.

编辑:您不能使用Dictionary/SortedDictionary在常量中执行此操作.为什么不实现自己的二叉搜索树(比如SortedDictionary),你会有O(log n)时间查找和O(1)时间.next()