List<T>.CopyTo Metod

Definition

Kopierar List<T> eller en del av den till en matris.

Överlagringar

Name Description
CopyTo(T[], Int32)

Kopierar hela List<T> till en kompatibel endimensionell matris med början vid det angivna indexet för målmatrisen.

CopyTo(Int32, T[], Int32, Int32)

Kopierar ett område med element från List<T> till en kompatibel endimensionell matris med början vid det angivna indexet för målmatrisen.

CopyTo(T[])

Kopierar hela List<T> till en kompatibel endimensionell matris med början av målmatrisen.

Exempel

I följande exempel visas alla tre överlagringarna av CopyTo metoden. En List<T> sträng skapas och fylls med 5 strängar. En tom strängmatris med 15 element skapas och metodöverlagringen CopyTo(T[]) används för att kopiera alla element i listan till matrisen som börjar vid det första elementet i matrisen. Metodens CopyTo(T[], Int32) överlagring används för att kopiera alla element i listan till matrisen som börjar vid matrisindex 6 (vilket lämnar index 5 tomt). Slutligen används metodöverlagringen CopyTo(Int32, T[], Int32, Int32) för att kopiera 3 element från listan, som börjar med index 2, till matrisen som börjar vid matrisindex 12 (vilket lämnar index 11 tomt). Innehållet i matrisen visas sedan.

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
 */
Imports System.Collections.Generic

Public Class Example

    Public Shared Sub Main()

        Dim dinosaurs As New List(Of String)

        dinosaurs.Add("Tyrannosaurus")
        dinosaurs.Add("Amargasaurus")
        dinosaurs.Add("Mamenchisaurus")
        dinosaurs.Add("Brachiosaurus")
        dinosaurs.Add("Compsognathus")

        Console.WriteLine()
        For Each dinosaur As String In dinosaurs
            Console.WriteLine(dinosaur)
        Next

        ' Declare an array with 15 elements (0 through 14).
        Dim array(14) As String

        dinosaurs.CopyTo(array)
        dinosaurs.CopyTo(array, 6)
        dinosaurs.CopyTo(2, array, 12, 3)

        Console.WriteLine(vbLf & "Contents of the array:")
        For Each dinosaur As String In array
            Console.WriteLine(dinosaur)
        Next

    End Sub
End Class

' 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

CopyTo(T[], Int32)

Kopierar hela List<T> till en kompatibel endimensionell matris med början vid det angivna indexet för målmatrisen.

public:
 virtual void CopyTo(cli::array <T> ^ array, int arrayIndex);
public void CopyTo(T[] array, int arrayIndex);
abstract member CopyTo : 'T[] * int -> unit
override this.CopyTo : 'T[] * int -> unit
Public Sub CopyTo (array As T(), arrayIndex As Integer)

Parametrar

array
T[]

Den endimensionella Array som är målet för de element som kopieras från List<T>. Array Måste ha nollbaserad indexering.

arrayIndex
Int32

Det nollbaserade index array där kopieringen börjar.

Implementeringar

Undantag

array är null.

arrayIndex är mindre än 0.

Antalet element i källan List<T> är större än det tillgängliga utrymmet från arrayIndex till slutet av målet array.

Kommentarer

Den här metoden använder Array.Copy för att kopiera elementen.

Elementen kopieras till Array i samma ordning som uppräknaren itererar genom List<T>.

Den här metoden är en O(n)-åtgärd, där n är Count.

Gäller för

CopyTo(Int32, T[], Int32, Int32)

Kopierar ett område med element från List<T> till en kompatibel endimensionell matris med början vid det angivna indexet för målmatrisen.

public:
 void CopyTo(int index, cli::array <T> ^ array, int arrayIndex, int count);
public void CopyTo(int index, T[] array, int arrayIndex, int count);
member this.CopyTo : int * 'T[] * int * int -> unit
Public Sub CopyTo (index As Integer, array As T(), arrayIndex As Integer, count As Integer)

Parametrar

index
Int32

Det nollbaserade indexet i källan List<T> där kopieringen börjar.

array
T[]

Den endimensionella Array som är målet för de element som kopieras från List<T>. Array Måste ha nollbaserad indexering.

arrayIndex
Int32

Det nollbaserade index array där kopieringen börjar.

count
Int32

Antalet element som ska kopieras.

Undantag

array är null.

index är mindre än 0.

-eller-

arrayIndex är mindre än 0.

-eller-

count är mindre än 0.

index är lika med eller större än Count källans List<T>.

-eller-

Antalet element från index till slutet av källan List<T> är större än det tillgängliga utrymmet från arrayIndex till slutet av målet array.

Kommentarer

Den här metoden använder Array.Copy för att kopiera elementen.

Elementen kopieras till Array i samma ordning som uppräknaren itererar genom List<T>.

Den här metoden är en O(n)-åtgärd, där n är count.

Gäller för

CopyTo(T[])

Kopierar hela List<T> till en kompatibel endimensionell matris med början av målmatrisen.

public:
 void CopyTo(cli::array <T> ^ array);
public void CopyTo(T[] array);
member this.CopyTo : 'T[] -> unit
Public Sub CopyTo (array As T())

Parametrar

array
T[]

Den endimensionella Array som är målet för de element som kopieras från List<T>. Array Måste ha nollbaserad indexering.

Undantag

array är null.

Antalet element i källan List<T> är större än antalet element som målet array kan innehålla.

Kommentarer

Den här metoden använder Array.Copy för att kopiera elementen.

Elementen kopieras till Array i samma ordning som uppräknaren itererar genom List<T>.

Den här metoden är en O(n)-åtgärd, där n är Count.

Gäller för