C#中的SortedSet类
C#中的SortedSet类表示按排序顺序维护的对象的集合。
以下是SortedSet类的属性-
获取IComparer<T>对象,该对象用于对SortedSet<T>中的值进行排序。
获取SortedSet<T>中的元素数。
获取由比较器定义的SortedSet<T>中的最大值。
获取由比较器定义的SortedSet<T>中的最小值。
以下是SortedSet类的一些方法-
将元素添加到集合中并返回一个值,该值指示该元素是否已成功添加。
从集合中删除所有元素。
确定集合是否包含特定元素。
从目标数组的开头开始,将完整的SortedSet<T>复制到兼容的一维数组。
从指定的数组索引开始,将完整的SortedSet<T>复制到兼容的一维数组。
从指定的数组索引开始,将指定数量的元素从SortedSet<T>复制到兼容的一维数组。
返回一个IEqualityComparer对象,该对象可用于创建包含单个集合的集合。
示例
现在让我们看一些例子-
要检查SortedSet是否包含特定元素,代码如下-
using System; using System.Collections.Generic; public class Demo { public static void Main() { SortedSet<string> set1 = new SortedSet<string>(); set1.Add("CD"); set1.Add("CD"); set1.Add("CD"); set1.Add("CD"); Console.WriteLine("Elements in SortedSet1..."); foreach (string res in set1) { Console.WriteLine(res); } Console.WriteLine("Does the SortedSet1 contains the element DE? = "+set1.Contains("DE")); SortedSet<string> set2 = new SortedSet<string>(); set2.Add("BC"); set2.Add("CD"); set2.Add("DE"); set2.Add("EF"); set2.Add("AB"); set2.Add("HI"); set2.Add("JK"); Console.WriteLine("Elements in SortedSet2..."); foreach (string res in set2) { Console.WriteLine(res); } Console.WriteLine("SortedSet2 is a superset of SortedSet1? = "+set2.IsSupersetOf(set1)); } }
输出结果
这将产生以下输出-
Elements in SortedSet1... CD Does the SortedSet1 contains the element DE? = False Elements in SortedSet2... AB BC CD DE EF HI JK SortedSet2 is a superset of SortedSet1? = True
要获得遍历SortedSet的枚举数,代码如下-
示例
using System; using System.Collections.Generic; public class Demo { public static void Main(){ SortedSet<string> set1 = new SortedSet<string>(); set1.Add("AB"); set1.Add("BC"); set1.Add("CD"); set1.Add("EF"); Console.WriteLine("Elements in SortedSet1..."); foreach (string res in set1) { Console.WriteLine(res); } SortedSet<string> set2 = new SortedSet<string>(); set2.Add("BC"); set2.Add("CD"); set2.Add("DE"); set2.Add("EF"); set2.Add("AB"); set2.Add("HI"); set2.Add("JK"); Console.WriteLine("Elements in SortedSet2 (Enumerator for SortedSet)..."); SortedSet<string>.Enumerator demoEnum = set2.GetEnumerator(); while (demoEnum.MoveNext()) { string res = demoEnum.Current; Console.WriteLine(res); } } }
输出结果
这将产生以下输出-
Elements in SortedSet1... AB BC CD EF Elements in SortedSet2 (Enumerator for SortedSet)... AB BC CD DE EF HI JK