GetViewBetweenメソッドは、引数で指定した範囲に該当する部分のビューを返します。 SortedSetの一部をコピーしたものが返されるわけではないため、元になったSortedSetに変更を加えると、GetViewBetweenメソッドで取得したサブセットにも反映されます。
GetViewBetweenメソッドで部分集合を取得した後に元のSortedSetに変更を加える
Imports System
Imports System.Collections.Generic
Class Sample
Shared Sub Main()
Dim s As New SortedSet(Of String)() From {"Alice", "Eve", "Charlie", "Bob", "Dave"}
Console.Write("s: ")
Console.WriteLine(String.Join(", ", s))
' 最小で"B"、最大で"E"の範囲に該当する部分集合を取得する
Dim view As SortedSet(Of String) = s.GetViewBetween("B", "E")
Console.Write("view: ")
Console.WriteLine(String.Join(", ", view))
' 元の集合に変更を加える
' (上で取得した部分集合にも影響する)
s.Add("Diana")
Console.Write("view: ")
Console.WriteLine(String.Join(", ", view))
End Sub
End Class
実行結果
s: Alice, Bob, Charlie, Dave, Eve view: Bob, Charlie, Dave view: Bob, Charlie, Dave, Diana