内容简介:代码日志版权声明:翻译自:http://stackoverflow.com/questions/1234831/is-there-a-generic-alternative-to-the-listdictionary-class
T>中有足够的开销对象来证明非通用ListDictionary的开销?
将使用此对象的代码将枚举在每个页面加载上,我猜想是为什么ListDictionary类被用于其他替代方法之一.这也是为什么我希望在这个数据列表中表现最好的.
不幸的是没有类似于ListDictionary的泛型.
但是,实施这一点并不是非常困难的. ListDictionary基本上通过保留Key / Value对的链表,并对它们进行查找操作.您可以创建一个ListDictionary&TK; TKalue>通过包装LinkedList<T>有一些非常简单的LINQ表达式.
例如
public class LinkedDictionary<TKey,TValue> {
private LinkedList<KeyValuePair<TKey,TValue>> _list = new LinkedList<KeyValuePair<TKey,TValue>>();
private IEqualityComparer<TKey> _comp = EqualityComparer<TKey>.Default;
public void Add(TKey key, TValue value) {
_list.Add(new KeyValuePair<TKey,TValue>(key,value));
}
public TValue Get(TKey key) {
return _list.Where(x => _comp.Equals(x.Key,key)).First().Value;
}
...
}
代码日志版权声明:
翻译自:http://stackoverflow.com/questions/1234831/is-there-a-generic-alternative-to-the-listdictionary-class
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
TCP/IP详解 卷1:协议
W.Richard Stevens / 范建华 / 机械工业出版社 / 2000-4-1 / 45.00元
《TCP/IP详解卷1:协议》是一本完整而详细的TCP/IP协议指南。描述了属于每一层的各个协议以及它们如何在不同操作系统中运行。作者W.Richard Stevens用Lawrence Berkeley实验室的tcpdump程序来捕获不同操作系统和TCP/IP实现之间传输的不同分组。对tcpdump输出的研究可以帮助理解不同协议如何工作。 《TCP/IP详解卷1:协议》适合作为计算机专业学......一起来看看 《TCP/IP详解 卷1:协议》 这本书的介绍吧!
html转js在线工具
html转js在线工具
UNIX 时间戳转换
UNIX 时间戳转换