ToList Extension Example
This page was last reviewed on Apr 21, 2023.
Dot Net Perls
ToList. Often in VB.NET programs we have arrays. But we want those arrays to be used as Lists. What is the easiest way to convert a collection into a List?
Method notes. In VB.NET, we have access to an Extension called ToList. We can call ToList directly upon an array. An array of any type of elements can be used.
Example. In VB.NET programs, we often can benefit from the features of Lists, such as dynamic resizing. This motivates us to convert from arrays to Lists.
Step 1 This program uses standard VB.NET syntax to create an array of 4 String literals.
Step 2 We invoke ToList. The resulting List has 4 elements and contains all the same elements as the originating array.
Step 3 We use the For-Each loop to iterate over the elements in the newly-created List and print each one to the Console.
Tip At this point, we can add elements to our List collection dynamically, as with Add. This could not be done with the array.
Module Module1 Sub Main() ' Step 1: create array. Dim array() As String = {"A", "B", "C", "D"} ' Step 2: create List and print Count. Dim list As List(Of String) = array.ToList() Console.WriteLine(list.Count) ' Step 3: display each item. For Each item As String In list Console.WriteLine(" {0}", item) Next End Sub End Module
4 A B C D
Discussion. When you call the ToList Extension, a few internal checks occur. The parameter (the instance ToList is called on) is checked for Nothing.
And Then, depending on the type of the argument, the List constructor is called.
Note This means that, when you know the type of the instance is an array, using the List constructor directly is more efficient.
Info This bypasses logic tests. ToList should only be used on types that cannot be passed to the List constructor.
' Create List. Dim list As List(Of String) = array.ToList()
' Create List: same result. Dim list As List(Of String) = New List(Of String)(array)
Summary. The List type is often preferred in programs for its dynamic resizing. It is easier to use than an array. A List results in some performance drawbacks.
Convert List, Array
Dot Net Perls is a collection of tested code examples. Pages are continually updated to stay current, with code correctness a top priority.
Sam Allen is passionate about computer languages. In the past, his work has been recommended by Apple and Microsoft and he has studied computers at a selective university in the United States.
This page was last updated on Apr 21, 2023 (rewrite).
© 2007-2024 Sam Allen.