-
List<T> 컬렉션C# 예제 공부일기 2020. 7. 14. 20:41
List<T> 클래스는 C#프로그래밍에서 동적으로 생성되고 삭제되는 자료를 저장할 때 가장 번번하게 사용된다. 배열과 달리 크기가 가변이고, 제네릭 컬렉션이기 때문에 T에 어떤 자료형도 넣을 수 있는 리스트이다.
List<int> list = new List<int>();
위와 같이 선언이 가능하다. list<T> 는 제네릭 컬렉션이므로 System.Collections.Gneneric 을 using문으로 포함시켜서 사용한다. 일반적으로 제네릭 컬렉션이 성능이 좋기 때문에 ArrayList 대신 List<T>를 사용할 것이 권장된다.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ListTPractice { class Program { static void Main(string[] args) { List<int> a = new List<int>(); Random r = new Random(); PrintValues(a); for (int i = 0; i < 16; i++) a.Add(r.Next(100)); PrintValues(a); a.Sort(); PrintValues(a); a.RemoveAt(3); PrintValues(a); } private static void PrintValues(List<int> a) { Console.WriteLine("Print Values in List<int>"); Console.WriteLine(" Count = {0} ", a.Count); Console.WriteLine(" Capacity = {0} ", a.Capacity); foreach (var item in a) { Console.Write(" " + item); } Console.WriteLine(); } } }
앞서 했던 ArrayList와 거의 유사하다. 제네릭이라는 점만 제외하면 사용법은 거의 유사한 듯 하다. 특이점으로 Capacity가 어떻게 늘어나는지 궁금해서 List에 값을 10개만 줬을 땐 Capacity 가 16이고 Count가 16이 되어도 16이다가 Count 를 17개로 늘리면 용량이 확늘어난다. 미리 용량을 확보해두는 것 같다.
'C# 예제 공부일기' 카테고리의 다른 글
배열을 내림차순으로 정렬하는 방법 (0) 2020.07.20 List<T>와 배열의 정렬 (0) 2020.07.20 컬렉션, ArrayList의 사용 (0) 2020.07.14 큐를 이용한 프로그램 (0) 2020.07.14 Queue<T> 의 구현 (0) 2020.07.14