List<T>.CopyTo Method (T[])
Copies the entire List<T> to a compatible one-dimensional array, starting at the beginning of the target array.
Assembly: mscorlib (in mscorlib.dll)
| Exception | Condition |
|---|---|
| ArgumentNullException | array is null. |
| ArgumentException | The number of elements in the source List<T> is greater than the number of elements that the destination array can contain. |
This method uses Array.Copy to copy the elements.
The elements are copied to the Array in the same order in which the enumerator iterates through the List<T>.
This method is an O(n) operation, where n is Count.
The following example demonstrates all three overloads of the CopyTo method. A List<T> of strings is created and populated with 5 strings. An empty string array of 15 elements is created, and the CopyTo(T[]) method overload is used to copy all the elements of the list to the array beginning at the first element of the array. The CopyTo(T[], Int32) method overload is used to copy all the elements of the list to the array beginning at array index 6 (leaving index 5 empty). Finally, the CopyTo(Int32, T[], Int32, Int32) method overload is used to copy 3 elements from the list, beginning with index 2, to the array beginning at array index 12 (leaving index 11 empty). The contents of the array are then displayed.
using System; using System.Collections.Generic; public class Example { public static void Main() { List<string> dinosaurs = new List<string>(); dinosaurs.Add("Tyrannosaurus"); dinosaurs.Add("Amargasaurus"); dinosaurs.Add("Mamenchisaurus"); dinosaurs.Add("Brachiosaurus"); dinosaurs.Add("Compsognathus"); Console.WriteLine(); foreach(string dinosaur in dinosaurs) { Console.WriteLine(dinosaur); } // Declare an array with 15 elements. string[] array = new string[15]; dinosaurs.CopyTo(array); dinosaurs.CopyTo(array, 6); dinosaurs.CopyTo(2, array, 12, 3); Console.WriteLine("\nContents of the array:"); foreach(string dinosaur in array) { Console.WriteLine(dinosaur); } } } /* This code example produces the following output: Tyrannosaurus Amargasaurus Mamenchisaurus Brachiosaurus Compsognathus Contents of the array: Tyrannosaurus Amargasaurus Mamenchisaurus Brachiosaurus Compsognathus Tyrannosaurus Amargasaurus Mamenchisaurus Brachiosaurus Compsognathus Mamenchisaurus Brachiosaurus Compsognathus */
Available since 8
.NET Framework
Available since 2.0
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1