📅  最后修改于: 2023-12-03 15:14:30.199000             🧑  作者: Mango
在 C# 中,SortedSet 是一种集合类型,它可以存储一组已排序的不重复项。如果您需要遍历 SortedSet 中的元素,可以使用枚举数。
要获取 SortedSet 中的枚举数,请使用 GetEnumerator
方法。该方法返回一个实现了 IEnumerator<T>
接口的枚举数对象。
SortedSet<int> sortedSet = new SortedSet<int>();
// Populating the SortedSet with elements
sortedSet.Add(3);
sortedSet.Add(2);
sortedSet.Add(1);
sortedSet.Add(4);
sortedSet.Add(5);
// Getting the enumerator
IEnumerator<int> enumerator = sortedSet.GetEnumerator();
要遍历枚举数中的元素,请使用 MoveNext
方法和 Current
属性。MoveNext
将枚举移到集合的下一个元素,而 Current
返回当前元素。
while (enumerator.MoveNext())
{
int currentElement = enumerator.Current;
// Do something with the current element
}
请注意,枚举器始终从 SortedSet 的第一个元素开始,直到最后一个元素为止。如果要重新遍历 SortedSet,请获得一个新的枚举数对象。
下面是使用 SortedSet 和枚举数的完整示例:
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
SortedSet<int> sortedSet = new SortedSet<int>();
// Populating the SortedSet with elements
sortedSet.Add(3);
sortedSet.Add(2);
sortedSet.Add(1);
sortedSet.Add(4);
sortedSet.Add(5);
// Getting the enumerator
IEnumerator<int> enumerator = sortedSet.GetEnumerator();
// Iterating over the elements
while (enumerator.MoveNext())
{
int currentElement = enumerator.Current;
Console.WriteLine(currentElement);
}
// Resetting the enumerator
enumerator.Reset();
// Iterating over the elements again
while (enumerator.MoveNext())
{
int currentElement = enumerator.Current;
Console.WriteLine(currentElement);
}
}
}
以上就是在C#中获取SortedSet枚举数的方法。使用枚举数可以遍历排序集合中的元素,并进行必要的操作。