有没有人知道C#中有没有与Java的Set集合相当的好东西?我知道您可以通过填充但忽略值来使用Dictionary或HashTable模拟集合,但这不是一种非常优雅的方式。
发布于 2008-10-08 16:35:05
试试HashSet
HashSet(Of T)类提供高性能的集合操作。集合是不包含重复元素的集合,并且其元素没有特定的顺序...
HashSet( of T)对象的容量是该对象可以容纳的元素的数量。当向对象添加元素时,HashSet(Of T)对象的容量会自动增加。
HashSet( of Hashtable T)类基于数学集合的模型,并提供类似于访问Dictionary(Of TKey, TValue)或 集合的键的高性能集合操作。简单地说,可以将HashSet( of T)类看作是一个没有值的Dictionary(Of TKey, TValue)集合。
HashSet(Of T)集合未排序,不能包含重复元素...
发布于 2008-10-08 16:36:17
如果你使用的是.NET 3.5,你可以使用HashSet。但是,.NET确实不能像Java那样很好地处理集合。
Wintellect PowerCollections可能也会有所帮助。
发布于 2013-09-01 02:01:54
如果您使用的是.NET 4.0或更高版本,请使用:
在需要排序的情况下,使用SortedSet。否则,由于HashSet是用于搜索和操作的O(1),所以如果您不这样做,那么请使用它。而对于搜索和操作操作,SortedSet<T>是O(log n)。
https://stackoverflow.com/questions/183685
复制相似问题