Condividi tramite


List<T>.CopyTo Metodo

Definizione

Copia List<T> o una parte di esso in una matrice.

Overload

CopyTo(T[], Int32)

Copia l'intero oggetto List<T> in una matrice compatibile unidimensionale, a partire dall'indice specificato della matrice di destinazione.

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

Copia un intervallo di elementi da List<T> in una matrice compatibile unidimensionale, a partire dall'indice specificato della matrice di destinazione.

CopyTo(T[])

Copia l'intero oggetto List<T> in una matrice compatibile unidimensionale, a partire dall'inizio della matrice di destinazione.

Esempio

Nell'esempio seguente vengono illustrati tutti e tre gli overload del CopyTo metodo . Una List<T> di stringhe viene creata e popolata con 5 stringhe. Viene creata una matrice di stringhe vuota di 15 elementi e l'overload del CopyTo(T[]) metodo viene usato per copiare tutti gli elementi dell'elenco nella matrice a partire dal primo elemento della matrice. L'overload del CopyTo(T[], Int32) metodo viene usato per copiare tutti gli elementi dell'elenco nella matrice a partire dall'indice della matrice 6 (lasciando vuoto l'indice 5). Infine, l'overload del CopyTo(Int32, T[], Int32, Int32) metodo viene usato per copiare 3 elementi dall'elenco, a partire dall'indice 2, alla matrice a partire dall'indice di matrice 12 (lasciando vuoto l'indice 11). Il contenuto della matrice viene quindi visualizzato.

using namespace System;
using namespace System::Collections::Generic;

void main()
{
    List<String^>^ dinosaurs = gcnew List<String^>();

    dinosaurs->Add("Tyrannosaurus");
    dinosaurs->Add("Amargasaurus");
    dinosaurs->Add("Mamenchisaurus");
    dinosaurs->Add("Brachiosaurus");
    dinosaurs->Add("Compsognathus");

    Console::WriteLine();
    for each(String^ dinosaurs in dinosaurs )
    {
        Console::WriteLine(dinosaurs);
    }

    // Create an array of 15 strings.
    array<String^>^ arr = gcnew array<String^>(15);

    dinosaurs->CopyTo(arr);
    dinosaurs->CopyTo(arr, 6);
    dinosaurs->CopyTo(2, arr, 12, 3);

    Console::WriteLine("\nContents of the array:");
    for each(String^ dinosaurs in arr )
    {
        Console::WriteLine(dinosaurs);
    }
}

/* This code example produces the following output:

Tyrannosaurus
Amargasaurus
Mamenchisaurus
Brachiosaurus
Deinonychus
Tyrannosaurus
Compsognathus

IndexOf("Tyrannosaurus"): 0

IndexOf("Tyrannosaurus", 3): 5

IndexOf("Tyrannosaurus", 2, 2): -1
 */
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)

Origine:
List.cs
Origine:
List.cs
Origine:
List.cs

Copia l'intero oggetto List<T> in una matrice compatibile unidimensionale, a partire dall'indice specificato della matrice di destinazione.

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)

Parametri

array
T[]

Oggetto Array unidimensionale che rappresenta la destinazione degli elementi copiati dall'oggetto List<T>. L'indicizzazione di Array deve essere in base zero.

arrayIndex
Int32

Indice in base zero in array in corrispondenza del quale viene avviata la copia.

Implementazioni

Eccezioni

array è null.

arrayIndex è minore di 0.

Il numero di elementi nell'oggetto List<T> di origine è maggiore dello spazio disponibile tra arrayIndex e la fine dell'oggetto array di destinazione.

Commenti

Questo metodo usa Array.Copy per copiare gli elementi.

Gli elementi vengono copiati nell'oggetto Array nello stesso ordine in cui l'enumeratore scorre l'oggetto List<T>.

Questo metodo è un'operazione O(n), dove n è Count.

Si applica a

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

Origine:
List.cs
Origine:
List.cs
Origine:
List.cs

Copia un intervallo di elementi da List<T> in una matrice compatibile unidimensionale, a partire dall'indice specificato della matrice di destinazione.

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)

Parametri

index
Int32

Indice in base zero dell'oggetto List<T> di origine a partire dal quale viene effettuata la copia.

array
T[]

Oggetto Array unidimensionale che rappresenta la destinazione degli elementi copiati dall'oggetto List<T>. L'indicizzazione di Array deve essere in base zero.

arrayIndex
Int32

Indice in base zero in array in corrispondenza del quale viene avviata la copia.

count
Int32

Numero degli elementi da copiare.

Eccezioni

array è null.

index è minore di 0.

-oppure-

arrayIndex è minore di 0.

-oppure-

count è minore di 0.

index è maggiore o uguale al valore di Count dell'oggetto List<T> di origine.

-oppure-

Il numero di elementi da index alla fine dell'oggetto List<T> di origine è maggiore dello spazio disponibile da arrayIndex alla fine dell'oggetto array di destinazione.

Commenti

Questo metodo usa Array.Copy per copiare gli elementi.

Gli elementi vengono copiati nell'oggetto Array nello stesso ordine in cui l'enumeratore scorre l'oggetto List<T>.

Questo metodo è un'operazione O(n), dove n è count.

Si applica a

CopyTo(T[])

Origine:
List.cs
Origine:
List.cs
Origine:
List.cs

Copia l'intero oggetto List<T> in una matrice compatibile unidimensionale, a partire dall'inizio della matrice di destinazione.

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

Parametri

array
T[]

Oggetto Array unidimensionale che rappresenta la destinazione degli elementi copiati dall'oggetto List<T>. L'indicizzazione di Array deve essere in base zero.

Eccezioni

array è null.

Il numero di elementi nell'oggetto List<T> di origine è maggiore del numero di elementi che l'oggetto array di destinazione può contenere.

Commenti

Questo metodo usa Array.Copy per copiare gli elementi.

Gli elementi vengono copiati nell'oggetto Array nello stesso ordine in cui l'enumeratore scorre l'oggetto List<T>.

Questo metodo è un'operazione O(n), dove n è Count.

Si applica a