List<T>.CopyTo 메서드

정의

List<T>이나 그 일부를 배열에 복사합니다.Copies the List<T> or a portion of it to an array.

오버로드

CopyTo(T[], Int32)

대상 배열의 지정된 인덱스에서 시작하여 전체 List<T>을 호환되는 1차원 배열에 복사합니다.Copies the entire List<T> to a compatible one-dimensional array, starting at the specified index of the target array.

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

대상 배열의 지정된 인덱스에서 시작하여 List<T>에 있는 일련의 요소를 호환되는 1차원 배열에 복사합니다.Copies a range of elements from the List<T> to a compatible one-dimensional array, starting at the specified index of the target array.

CopyTo(T[])

대상 배열의 처음부터 시작하여 전체 List<T>을 호환되는 1차원 배열에 복사합니다.Copies the entire List<T> to a compatible one-dimensional array, starting at the beginning of the target array.

예제

다음 예제에서는 메서드의 세 오버 로드를 모두 보여 줍니다 CopyTo .The following example demonstrates all three overloads of the CopyTo method. List<T>문자열의가 만들어지고 5 개의 문자열로 채워집니다.A List<T> of strings is created and populated with 5 strings. 15 개 요소의 빈 문자열 배열이 만들어지고 CopyTo(T[]) 메서드 오버 로드를 사용 하 여 목록의 모든 요소를 배열의 첫 번째 요소에서 시작 하는 배열에 복사 합니다.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. CopyTo(T[], Int32)메서드 오버 로드는 배열 인덱스 6에서 시작 하는 배열에 목록의 모든 요소를 복사 하는 데 사용 됩니다 (인덱스 5가 비어 있음).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). 마지막으로, CopyTo(Int32, T[], Int32, Int32) 메서드 오버 로드를 사용 하 여 목록에서 인덱스 2로 시작 하는 3 개의 요소를 배열 인덱스 12 (인덱스 11 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 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)

대상 배열의 지정된 인덱스에서 시작하여 전체 List<T>을 호환되는 1차원 배열에 복사합니다.Copies the entire List<T> to a compatible one-dimensional array, starting at the specified index of the target array.

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)

매개 변수

array
T[]

Array에서 복사한 요소의 대상인 일차원 List<T>입니다.The one-dimensional Array that is the destination of the elements copied from List<T>. Array에는 0부터 시작하는 인덱스가 있어야 합니다.The Array must have zero-based indexing.

arrayIndex
Int32

array에서 복사가 시작되는 0부터 시작하는 인덱스입니다.The zero-based index in array at which copying begins.

구현

예외

array이(가) null인 경우array is null.

arrayIndex 가 0보다 작습니다.arrayIndex is less than 0.

소스 List<T>의 요소 수가 대상 arrayarrayIndex부터 끝까지 사용 가능한 공간보다 큽니다.The number of elements in the source List<T> is greater than the available space from arrayIndex to the end of the destination array.

설명

이 메서드 Array.Copy 는를 사용 하 여 요소를 복사 합니다.This method uses Array.Copy to copy the elements.

요소는 열거자가를 반복 하는 것 Array 과 같은 순서로에 복사 됩니다 List<T> .The elements are copied to the Array in the same order in which the enumerator iterates through the List<T>.

이 메서드는 O (n) 작업입니다. 여기서 nCount 입니다.This method is an O(n) operation, where n is Count.

적용 대상

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

대상 배열의 지정된 인덱스에서 시작하여 List<T>에 있는 일련의 요소를 호환되는 1차원 배열에 복사합니다.Copies a range of elements from the List<T> to a compatible one-dimensional array, starting at the specified index of the target array.

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)

매개 변수

index
Int32

소스 List<T>에서 복사가 시작되는 인덱스(0부터 시작)입니다.The zero-based index in the source List<T> at which copying begins.

array
T[]

Array에서 복사한 요소의 대상인 일차원 List<T>입니다.The one-dimensional Array that is the destination of the elements copied from List<T>. Array에는 0부터 시작하는 인덱스가 있어야 합니다.The Array must have zero-based indexing.

arrayIndex
Int32

array에서 복사가 시작되는 0부터 시작하는 인덱스입니다.The zero-based index in array at which copying begins.

count
Int32

복사할 요소의 수입니다.The number of elements to copy.

예외

array이(가) null인 경우array is null.

index 가 0보다 작습니다.index is less than 0.

또는-or- arrayIndex 가 0보다 작습니다.arrayIndex is less than 0.

또는-or- count 가 0보다 작습니다.count is less than 0.

index가 소스 List<T>Count보다 크거나 같습니다.index is equal to or greater than the Count of the source List<T>.

또는-or- 소스 List<T>index부터 끝까지에 포함된 요소 수가 대상 arrayarrayIndex부터 끝까지의 사용 가능한 공간보다 큽니다.The number of elements from index to the end of the source List<T> is greater than the available space from arrayIndex to the end of the destination array.

설명

이 메서드 Array.Copy 는를 사용 하 여 요소를 복사 합니다.This method uses Array.Copy to copy the elements.

요소는 열거자가를 반복 하는 것 Array 과 같은 순서로에 복사 됩니다 List<T> .The elements are copied to the Array in the same order in which the enumerator iterates through the List<T>.

이 메서드는 O (n) 작업입니다. 여기서 ncount 입니다.This method is an O(n) operation, where n is count.

적용 대상

CopyTo(T[])

대상 배열의 처음부터 시작하여 전체 List<T>을 호환되는 1차원 배열에 복사합니다.Copies the entire List<T> to a compatible one-dimensional array, starting at the beginning of the target array.

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

매개 변수

array
T[]

Array에서 복사한 요소의 대상인 일차원 List<T>입니다.The one-dimensional Array that is the destination of the elements copied from List<T>. Array에는 0부터 시작하는 인덱스가 있어야 합니다.The Array must have zero-based indexing.

예외

array이(가) null인 경우array is null.

소스 List<T> 요소 수가 대상 array를 포함할 수 있는 요소 수보다 큽니다.The number of elements in the source List<T> is greater than the number of elements that the destination array can contain.

설명

이 메서드 Array.Copy 는를 사용 하 여 요소를 복사 합니다.This method uses Array.Copy to copy the elements.

요소는 열거자가를 반복 하는 것 Array 과 같은 순서로에 복사 됩니다 List<T> .The elements are copied to the Array in the same order in which the enumerator iterates through the List<T>.

이 메서드는 O (n) 작업입니다. 여기서 nCount 입니다.This method is an O(n) operation, where n is Count.

적용 대상