C#의 Queue.CopyTo() 메서드는 지정된 배열 인덱스에서 시작하여 Queue 요소를 기존 1차원 배열에 복사하는 데 사용됩니다.
구문
구문은 다음과 같습니다 -
public virtual void CopyTo (Array arr, int index);
위에서 arr 매개변수는 Queue에서 복사한 요소의 대상인 1차원 Array입니다. index 매개변수는 복사가 시작되는 배열의 0부터 시작하는 인덱스입니다.
예시
이제 예를 살펴보겠습니다 -
using System; using System.Collections.Generic; public class Demo { public static void Main() { Queue<int> queue = new Queue<int>(); queue.Enqueue(100); queue.Enqueue(200); queue.Enqueue(300); Console.Write("Count of elements = "); Console.WriteLine(queue.Count); Console.WriteLine("Queue..."); foreach(int i in queue) { Console.WriteLine(i); } Console.WriteLine("Does the queue has element 500? = "+queue.Contains(500)); int[] intArr = new int[5]; intArr[0] = 1; intArr[1] = 2; intArr[2] = 3; intArr[3] = 4; queue.CopyTo(intArr, 1); Console.WriteLine("\nQueue (Updated)"); foreach(int i in queue) { Console.WriteLine(i); } Console.WriteLine("\nArray (Updated)"); foreach(int i in intArr) { Console.WriteLine(i); } } }
출력
이것은 다음과 같은 출력을 생성합니다 -
Count of elements = 3 Queue... 100 200 300 Does the queue has element 500? = False Queue (Updated) 100 200 300 Array (Updated) 1 100 200 300 0
예시
이제 다른 예를 살펴보겠습니다 -
using System; using System.Collections.Generic; public class Demo { public static void Main() { Queue<string> queue = new Queue<string>(); queue.Enqueue("Tim"); queue.Enqueue("Jack"); queue.Enqueue("Nathan"); queue.Enqueue("Tom"); queue.Enqueue("David"); queue.Enqueue("Mark"); Console.Write("Count of elements = "); Console.WriteLine(queue.Count); Console.WriteLine("Queue..."); foreach(string i in queue) { Console.WriteLine(i); } string[] strArr = new string[10]; strArr[0] = "AB"; strArr[1] = "BC"; strArr[2] = "DE"; strArr[3] = "EF"; queue.CopyTo(strArr, 1); Console.WriteLine("\nQueue (Updated)"); foreach(string i in queue) { Console.WriteLine(i); } Console.WriteLine("\nArray (Updated)"); foreach(string i in strArr) { Console.WriteLine(i); } } }
출력
이것은 다음과 같은 출력을 생성합니다 -
Count of elements = 6 Queue... Tim Jack Nathan Tom David Mark Queue (Updated) Tim Jack Nathan Tom David Mark Array (Updated) AB Tim Jack Nathan Tom David Mark