HashSet C#HashSet数据结构是在.NET Framework 3.5中引入的.可以在HashSet MSDN页面上找到已实现成员的完整列表.
从列表中获取所有不同项目的最快/最有效方法是什么?
我有一个List<string>可能有多个重复项目,只想要列表中的唯一值.
我想知道我是否可以就哪种方法创建一组不同的元素更好的方法达成共识:a C# HashSet或using IEnumerable's .Distinct(),这是Linq函数?
假设我正在使用DataReader循环查询数据库中的查询结果,我的选项是将我构造的对象添加到a List<SomeObject>或者HashSet<SomeObject>使用该List选项,我最终必须执行以下操作:
myList = myList.Distinct().ToList<SomeObject>();
有了这个HashSet,我的理解是,假设你已经覆盖了SomeObject中的GetHashCode()and和Equals()方法,那么添加元素就可以自己处理非重复.我主要关注选项的风险和性能方面.
谢谢.