Home
VB.NET
SortedSet Examples
Updated Oct 11, 2023
Dot Net Perls
SortedSet. Often we must create a List of items and then sort it. With a SortedSet, we can keep the elements sorted as we add them, potentially improving performance.
And with this collection, we can ensure no duplicate elements are added. The SortedSet thus is a good way to have a collection of unique, ordered items.
Initial example. This program uses the SortedSet collection: it adds 3 strings to a SortedSet of Strings. It then uses the For-Each loop on the SortedSet.
For
Also The code uses Contains() to see if an element is in the set. We can quickly test to see whether the set contains something.
Module Module1 Sub Main() ' Create new SortedSet. Dim sorted = New SortedSet(Of String)() sorted.Add("carrot") sorted.Add("apple") sorted.Add("bird") ' Loop over items in SortedSet. For Each item As String In sorted Console.WriteLine("SORTEDSET: {0}", item) Next ' See if SortedSet contains a string. If sorted.Contains("bird") Then Console.WriteLine("CONTAINS bird") End If End Sub End Module
SORTEDSET: apple SORTEDSET: bird SORTEDSET: carrot CONTAINS bird
Overlaps. Does any element in the SortedSet also occur in another collection? The Overlaps method will test a SortedSet against an IEnumerable—this means a List or array (usually).
Start We create a SortedSet, and a List. The value 20 occurs in both collections, so Overlaps returns true.
Finally We create an empty array (where the maximum index is -1). No elements are in common, so Overlaps returns false.
Module Module1 Sub Main() Dim sorted = New SortedSet(Of Integer)() sorted.Add(10) sorted.Add(20) Dim list = New List(Of Integer)() list.Add(20) list.Add(30) ' One element is the same, so Overlaps returns true. If sorted.Overlaps(list) Then Console.WriteLine("OVERLAPS = true") End If ' Create an empty array. ' ... The Overlaps method will then return false. Dim array(-1) As Integer If sorted.Overlaps(array) Then Console.WriteLine("NOT REACHED") End If End Sub End Module
OVERLAPS = true
Notes, performance. It is possible to use SortedSet to improve performance. It lets us eliminate duplicates, and keep a collection sorted, as we go along.
Detail There is no need to sort the items after we are done adding them to the collection.
And There is no need to check for duplicates as we add them—the SortedSet is automatically restricted to distinct elements.
Summary. We explored the SortedSet generic collection in VB.NET. String elements, Integer elements, or many other types can be used in a SortedSet.
Dot Net Perls is a collection of pages with code examples, which are updated to stay current. Programming is an art, and it can be learned from examples.
Donate to this site to help offset the costs of running the server. Sites like this will cease to exist if there is no financial support for them.
Sam Allen is passionate about computer languages, and he maintains 100% of the material available on this website. He hopes it makes the world a nicer place.
This page was last updated on Oct 11, 2023 (text).
Home
Changes
© 2007-2025 Sam Allen