Tip ToArray is found within System.Linq. It can be called on any type instance that implements IEnumerable.
Tip 2 Many types implement IEnumerable. And we can even use the IEnumerable type itself—this is what we do in this program.
Enumerable.Range The example also uses Enumerable.Range to quickly get an IEnumerable of Integers.
VB.NET program that uses ToArray
' Create an IEnumerable range.
' This is not an array.
Dim e As IEnumerable(Of Integer) = Enumerable.Range(0, 10)
' Use ToArray extension to convert to an array.
Dim array() As Integer = e.ToArray()
' Display elements.
For Each i As Integer In array
Internals. I investigated the ToArray extension Function. It is located within System.Core.dll in the .NET Framework's folder. I opened this file with IL Disassembler.
Info This Function allocates a new array. It then calls into Array.Copy. This newly-allocated array is returned to the calling Function.
Performance. By looking at its implementation, we can determine there is no performance benefit to calling ToArray. It can improve program syntax.
Also Some collections, such as List, offer a separate ToArray Function. This is not an extension method.