C#에서 List<T> 컬렉션을 배열로 변환하려면 ToArray() 메서드를 사용하면 됩니다. 이 메서드는 리스트에 담긴 모든 요소를 새로운 배열에 복사하여 반환해 주므로, 몇 줄의 코드만으로 간단하게 변환 작업을 처리할 수 있습니다.
1. 리스트 컬렉션 생성하기
먼저 문자열 타입의 리스트 컬렉션을 선언하고 요소를 추가합니다.
List<string> myList = new List<string>();
myList.Add("RedHat");
myList.Add("Ubuntu");
2. ToArray() 메서드로 배열 변환하기
리스트 객체에서 ToArray() 메서드를 호출하면 해당 리스트가 문자열 배열로 변환됩니다.
string[] str = myList.ToArray();
전체 예제 코드
아래는 위 과정을 하나로 묶은 완성된 코드입니다. 리스트 출력, 배열 변환, 그리고 변환된 배열의 출력까지 순서대로 확인할 수 있습니다.
using System;
using System.Collections.Generic;
public class Program {
public static void Main() {
// 리스트 컬렉션 생성 및 요소 추가
List<string> myList = new List<string>();
myList.Add("RedHat");
myList.Add("Ubuntu");
Console.WriteLine("리스트 출력...");
foreach(string value in myList) {
Console.WriteLine(value);
}
// 리스트를 배열로 변환
Console.WriteLine("배열로 변환 중...");
string[] str = myList.ToArray();
// 변환된 배열 출력
foreach(string s in str) {
Console.WriteLine(s);
}
}
}
실행 결과
리스트 출력... RedHat Ubuntu 배열로 변환 중... RedHat Ubuntu
참고 사항
ToArray()는 호출될 때마다 새로운 배열을 생성한다는 점을 기억하세요. 따라서 변환된 배열을 수정하더라도 원본 리스트에는 영향을 주지 않으며, 두 데이터 구조는 서로 독립적으로 동작합니다.
또한, 이미 존재하는 배열의 특정 인덱스 위치부터 요소를 복사하고 싶다면 CopyTo() 메서드를 대안으로 활용할 수 있습니다. 단순히 전체 리스트를 새 배열로 만드는 경우라면 ToArray()가 가장 간결하고 직관적인 선택입니다.