按排序顺序排列的对象集合在 C# 中称为 SortedSet,该集合是通用类型,位于命名空间 Systems.Collections.Generic 命名空间下。 SortedSet 类还提供了数学中的集合操作,例如差、交和并,并且 SortedSet 的大小随着新元素向集合中的添加而增长,因此它是动态集合,可以查看、删除元素或添加到 SortedSet 中的集合中。SortedSet 按降序排序,SortedSet 中没有冗余的元素,这意味着只有唯一的元素存储在 SortedSet 中。
语法:
SortedSet<Type>set_name = new SortedSet<Type>();
其中 Type 是排序集的类型,
set_name 是集合的名称。
以下是 C# SortedSet 的构造函数:
1。 SortedSet(): Sorted 类的新实例已初始化。
2。 SortedSet(IComparer):使用指定为参数的比较器初始化 Sorted 类的新实例。
3。 SortedSet(IEnumerable):初始化 Sorted 类的新实例,其中包含从指定为参数的可枚举集合中获取的元素。
4。 SortedSet(IEnumerable, IComparer):初始化 Sorted 类的新实例,其中包含从指定为参数的可枚举集合中获取的元素,并使用指定为参数的比较器。
5。 SortedSet(SerializationInfo, StreamingContext):初始化 Sorted 类的新实例,其中包含序列化的数据。
以下是C# SortedSet的方法:
1。 Add(T):使用 Add(T) 方法将元素添加到 SortedSet,成功将元素添加到 SortedSet 后,会返回一个值,表示添加成功。
2。 UnionWith(IEnumerable): 当前 Sorted 对象发生更改,使其包含当前对象中存在的或指定为参数的集合中存在的所有元素。
3。 Clear(): SortedSet 的所有元素都被删除。
4。 TryGetValue(T,T): 在 SortedSet 中搜索指定为参数的值,如果找到该值,则返回相等的值。
5。包含(T):在排序集中检查指定为参数的元素,以查明它是否存在于排序集中。
6。 ToString(): 返回代表当前对象的字符串。
7。 CopyTo(): 将排序集中的部分元素或排序集中的所有元素复制到一个一维数组,该数组与排序集兼容,索引为数组的开头复制开始的位置或指定的索引。
8。 SymmetricExceptWith(IEnumerable): 当前 Sorted 对象已更改为仅包含当前对象中存在的元素或指定为参数的集合中存在的元素,但不包含两者中的元素。
9。 CreateSetComparer():使用 CreateSetComparer() 方法返回 IEqualityComparer 对象,使用该方法创建包含各个集合的集合。
10。 SetEquals(IEnumerable): SetEquals(IEnumerable) 方法检查排序集的当前对象和参数指定的集合中是否存在相同的元素。
11。 CreateSetComparer(IEqualityComparer):使用 CreateSetComparer(IEqualityComparer) 方法根据指定为参数的比较器返回 IEqualityComparer 对象,使用该方法创建包含各个集合的集合。
12。 Reverse():使用 Reverse() 方法返回 IEnumerable,该方法以相反的顺序循环遍历排序集。
13。 Equals(Object): 检查指定为参数的对象是否等于当前对象。
14. RemoveWhere(Predicate): All the elements of the sorted set matching the conditions set by the predicate specified as a parameter is removed.
15. ExceptWith(IEnumerable): The elements in the collection specified as the parameter are removed from the current sorted set object.
16. Remove(T): The item specified as the parameter will be removed from the sorted set.
17. GetEnumerator(): An Enumerator is returned using GetEnumertor() method which loops through the sorted set.
18. Overlaps(IEnumerable): The Overlaps(IEnumerable) method is used to check if the elements in the current sorted set and the elements in the collection specified as parameters are the same.
19. GetHashCode(): The GetHashCode() method is the hash function by default.
20. OnDeserilaization(Object): The event of deserialization is raised after the completion of deserialization and the ISerializable interface is implemented.
21. GetObjectData(SerilaizationInfo, StreamingContext): The data that is necessary to serialize a sorted set object is returned, and the ISerializableinterface is implemented.
22. MemberwiseClone(): The shallow copy of the current object is created.
23. GetType(): The type of the current instance is returned.
24. IsSupersetOf(IEnumerable): The IsSupersetOf(IEnumerable) method is used to determine if the object of a sorted set is a superset of the collection specified as a parameter.
25. GetViewBetween(T,T): A view of the subset in the sorted set is returned.
26. IsSubsetOf(IEnumerable): The IsSubsetOf(IEnumerable) method is used to determine if the object of a sorted set is a subset of the collection specified as a parameter.
27. IntersectWith(IEnumerable)The current Sorted object is changed in such a way that it consists only of the elements present in the collection specified as a parameter.
28. IsProperSupersetOf(IEnumerable): The IsProperSupersetOf(IEnumerable) method is used to determine if the object of the sorted set is a proper superset of the collection specified as a parameter.
29. IsProperSubsetOf(IEnumerable): The IsProperSubsetOf(IEnumerable) method is used to determine if the object of a sorted set is a proper subset of the collection specified as a parameter.
Below are the examples of C# SortedSet:
C# program to create a SortedSetby using Add(T) method and then demonstrate the Remove(T) method and IsSubsetof(IEnumerable) method.
Code:
using System; using System.Collections.Generic; class program { public static void Main() { SortedSet<string>Set = new SortedSet<string>(); Set.Add("Shobha"); Set.Add("Ramya"); Set.Add("Nandan"); Set.Add("Nalina"); Set.Add("Sindhu"); Console.WriteLine("The elements of the sorted set are:"); foreach(string t in Set) { Console.WriteLine(t); } Console.WriteLine("The elements of the sorted set after using Remove method are:"); Set.Remove("Sindhu"); Set.Remove("Nalina"); foreach(string x in Set) { Console.WriteLine(x); } SortedSet<string> Set1 = new SortedSet<string>(); Set1.Add("Sahana"); Set1.Add("Suhaas"); Set1.Add("Nalina"); Console.WriteLine("Checking if the elements of the sorted set is a subset of the first set:"); Console.WriteLine(Set1.IsSubsetOf(Set)); } }
Output:
Explanation: In the above program, a class called program is called. Then the main method is called. Then a sorted set to store the strings is created. Then elements are added to the sorted set using add() method. Then the foreach loop is used to display the elements of the sorted set. Then remove() method is used to remove the elements of the sorted set. Then again the foreach loop is used to display the elements of the sorted set. Then again a new sorted set to store strings is created. Then again elements are added to the new sorted set using add() method. Then IsSubsetof() method is used to check if the newly created sorted set is a subset of the first sorted set. The output of the program is shown in the snapshot above.
以上是C# 排序集的详细内容。更多信息请关注PHP中文网其他相关文章!