c# – 如何在字典中插入第一个元素?
我有一个字典结构,里面有多个键值对.
myDict.Add(key1,value1); myDict.Add(key2,value2); myDict.Add(key3,value3); 我的字典用作一些控件的数据源.在控件的下拉菜单中,我看到的项目是这样的: key1 key2 key3 订单与我的字典相同. myDict.Add(newKey,newValue); myDict.Add(key1,value3); 如果我这样做,我知道newKey将显示在我的控制作为第一个元素. 我有一个想法来创建一个tempDict,将每个对的myDict放在tempDict中,然后清除myDict,然后添加如下所示的对: myDict.Add(newKey,value3); 有比这更好的办法吗? 谢谢! 解决方法Dictionary<K,V> 没有订购.任何感知的订单维护是偶然的(以及特定实现的工件,包括但不限于桶选择顺序和计数).
这些是我所了解的方法(只是使用Base Class Libraries BCL): > > .NET4,不可变,可以将键映射到多个值(在构建过程中观察重复项) > >旧的,非通用的,期望的字典性能界限(其他两种方法是“get(key)/ set(key)”的O(n)) >列表< KeyValuePair< K,V>> > .NET2 / 3好的,可变的,更多的脚步,可以将键映射到多个值(在插入中观察重复) 快乐编码. 创建一个维护插入顺序的哈希数据结构实际上只是对标准哈希实现的轻微修改(Ruby哈希现在保持插入顺序);然而,这并没有在.NET中完成,更重要的是它是Dictionary / IDictionary合同的一部分. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |