.NET 中是否有实现“设置”行为的通用容器?
我知道我可以只使用 a Dictionary<T, Object>
(并且可能添加nulls
为值),因为它的键充当一个集合,但我很好奇是否有现成的东西。
.NET 中是否有实现“设置”行为的通用容器?
我知道我可以只使用 a Dictionary<T, Object>
(并且可能添加nulls
为值),因为它的键充当一个集合,但我很好奇是否有现成的东西。
HashSet<T>
在 .NET 3.5 中
我使用 Iesi.Collections。NHibernate 附带的命名空间(此处的文档) - 如果您在 .NET < 3.5 中,可能值得考虑
在 .NET 3.5 中引入:( HashSet<T>
见下文)。
在 .NET 4.0 中引入ISet<T>
:
为集合的抽象提供基本接口。该接口提供了实现集合的方法,集合是具有独特元素和特定操作的集合。
该接口在 .NET 4+ BCL 中有两个实现:
...提供高性能的集合操作。集合是不包含重复元素且其元素没有特定顺序的集合
表示按排序顺序维护的对象集合。SortedSet(Of T) 在插入和删除元素时保持排序顺序,而不会影响性能。不允许重复元素。
FWIW:命名空间下还有一个。
它的唯一目的似乎是在.internal
class TreeSet<T>: SortedSet<T>
System.Collections.Generic
SortedDictionary<TKey, TValue>