c#中如何实现可以重复的键值

来源:百度知道 编辑:UC知道 时间:2024/06/07 00:02:52
key可以重复,value可以重复,但是(key,value)却惟一,就是不允许重复,key可以一对多,value也可以一对多,但是(key,value)惟一,如何实现?用sortedlist和dictionary类时都要求key惟一不重复,我该用什么实现?怎么实现?实现后不进行键值对的排序。

回答后还有50分

JAVA里有个IndentityHashMap可以实现重复key的集合
C# 里当然肯定必须也会有这样的类了 NameValueCollection

参考MSDN
ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.NETDEVFX.v20.chs/cpref2/html/T_System_Collections_Specialized_NameValueCollection.htm

当然1楼的也不失为一个好办法 而且还可以把keyValue(1楼中的类)放到一个list里 这样不用重写equals方法 也不用dictonary了 不过就是判断时候麻烦点

写一个新类KeyValue,有成员key和value,重写Equals方法,为return key.Eqauls(other.key)&&value.Equals(other.value);
把它作为dictonary的key就行了