C#中的SortedSet类表示按排序顺序维护的对象的集合。
以下是SortedSet类的属性-
| 序号 | 属性和说明 |
|---|---|
| 1 | 比较器 获取IComparer <T>对象,该对象用于对SortedSet <T>中的值进行排序。 |
| 2 | Count 获取SortedSet <T>中的元素数。 |
| 3 | Max 获取由比较器定义的SortedSet <T>中的最大值。 |
| 4 | Min 获取由比较器定义的SortedSet <T>中的最小值。 |
以下是SortedSet类的一些方法-
| 序号 | 方法与说明 |
|---|---|
| 1 | Add(T) 将元素添加到集合中并返回一个值,该值指示该元素是否已成功添加。 |
| 2 | Clear() 从集合中删除所有元素。 |
| 3 | Contains(T) 确定集合是否包含特定元素。 |
| 4 | CopyTo(T []) 从目标数组的开头开始,将完整的SortedSet <T>复制到兼容的一维数组。 |
| 5 | CopyTo(T [],Int32) 从指定的数组索引开始,将完整的SortedSet <T>复制到兼容的一维数组。 |
| 6 | CopyTo(T [],Int32,Int32) 从指定的数组索引开始,将指定数量的元素从SortedSet <T>复制到兼容的一维数组。 |
| 7 | CreateSetComparer() 返回一个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