Reverseメソッドは、SortedSetを通常とは逆順に列挙する列挙子(IEnumerator<T>)を返します。 つまり、Reverseメソッドを使うと、SortedSet内の要素を逆の順序で列挙することができます。
Reverseメソッドは、Array.ReverseメソッドやList.Reverseメソッドとは異なり、SortedSet内の要素の並びを変更しない、非破壊的なメソッドです。 Reverseメソッドを呼び出してもSortedSet内の要素は逆順にはならず、あくまで逆順で列挙する列挙子を返すだけという点に注意してください。
Reverseメソッドを使ってSortedSet内の要素を逆順で列挙する
Imports System
Imports System.Collections.Generic
Class Sample
Shared Sub Main()
Dim s As New SortedSet(Of Integer) From {5, 1, 0, 3, 4, 2}
' デフォルトの順序でSortedSetを列挙
For Each e As Integer In s
Console.Write("{0}, ", e)
Next
Console.WriteLine()
' デフォルトとは逆順でSortedSetを列挙
For Each e As Integer In s.Reverse()
Console.Write("{0}, ", e)
Next
Console.WriteLine()
End Sub
End Class
実行結果
5, 4, 3, 2, 1, 0, 0, 1, 2, 3, 4, 5,