请问,Dictionary类(字典)的排列顺序
Dictionary类:http://msdn.microsoft.com/zh-cn/library/xfhwa508(v=VS.100).aspx
其Item属性的参数是字典的键,不像List类,索引是int型的数字,List的元素的排列顺序就按照它的索引值来排列的
,那请问,Dictionary的元素有没有排列顺序,如果有,是什么决定了这个顺序值,如果没有,那遍历的时候,它又是
怎么遍历的,是无序遍历的吗?
[解决办法]
如果你希望排序的话,你可以在生成字典的时候,就按顺序插入 ,也就是说插入前 ,先排序,再插入!
[解决办法]
Dictionary<string, string> list = new Dictionary<string, string>();list.OrderBy(m => m.Key); //按key排序list.OrderBy(m => m.Value); //按value排序list.OrderBy(m => m.Key.Substring(1, 1)); //按key中的第2个字符进行排序
[解决办法]
http://topic.csdn.net/u/20080224/02/42824171-2246-40c2-8858-c63ca106a4b0.html?1604286828
猛然一卡可能 ls 的 很好,但是搜了一下 ls的是不对的
你看下这个帖子。
Dictionary<(Of <(TKey, TValue>)>) 泛型类提供了从一组键到一组值的映射。字典中的每个添加项都由一个值及其相关联的键组成。通过键来检索值的速度是非常快的,接近于 O(1),这是因为 Dictionary<(Of <(TKey, TValue>)>) 类是作为一个哈希表来实现的。
这个就是Dictionary的定义,它是作为一个哈希表来实现的
而大家都知道 hash 排序是没意义的
建议你用这个SortedDictionary