컬렉션 및 데이터 구조
업데이트: 2007년 11월
서로 밀접하게 관련된 데이터를 컬렉션으로 그룹화하면 좀 더 효율적으로 처리할 수 있습니다. 서로 다른 코드를 작성하여 각 개별 개체를 처리하는 대신, 동일한 코드를 사용하여 컬렉션의 모든 요소를 처리할 수 있습니다.
컬렉션을 관리하려면 Array 클래스 및 System.Collections 클래스를 사용하여 컬렉션의 개별 요소 또는 일정 범위의 요소를 추가, 제거 및 수정합니다. 전체 컬렉션을 다른 컬렉션에 복사할 수도 있습니다.
일부 Collections 클래스에는 정렬 기능이 있으며, 대부분 인덱싱되어 있습니다. 메모리 관리는 자동으로 처리되고 컬렉션의 용량은 필요에 따라 확장됩니다. 동기화는 컬렉션의 멤버에 액세스할 때 스레드로부터의 안전성을 제공합니다. 일부 Collections 클래스는 컬렉션을 읽기 전용이나 고정된 크기로 만드는 래퍼를 생성할 수 있습니다. 모든 Collections 클래스는 해당 요소간 이동을 쉽게 할 수 있는 자신의 열거자를 생성할 수 있습니다.
.NET Framework 버전 2.0에서 제네릭 컬렉션 클래스는 새로운 기능을 제공하며 강력한 형식의 컬렉션을 손쉽게 만들 수 있도록 합니다. System.Collections.Generic 및 System.Collections.ObjectModel 네임스페이스를 참조하십시오.
LINQ to Objects 기능을 사용하면 개체 형식이 IEnumerable 또는 IEnumerable<T>을 구현하는 경우 LINQ 쿼리를 통해 메모리 내 개체에 액세스할 수 있습니다. LINQ 쿼리는 데이터 액세스를 위한 일반 패턴을 제공하고, 표준 foreach 루프에 비해 간결하고 쉽게 읽을 수 있으며, 필터링, 순서 지정 및 그룹화 기능을 제공합니다. 또한 LINQ 쿼리를 통해 성능을 향상시킬 수도 있습니다. 자세한 내용은 LINQ to Objects를 참조하십시오.
단원 내용
컬렉션 정의
컬렉션 형식의 정의을 설명하며 .NET Framework 클래스 라이브러리에서의 제네릭 컬렉션 형식과 제네릭이 아닌 컬렉션 형식 간의 몇 가지 차이점을 설명합니다.일반적으로 사용되는 컬렉션 형식
Array, List<T> 및 Dictionary<TKey, TValue>와 같이 일반적으로 사용되는 제네릭 및 제네릭이 아닌 컬렉션 형식을 설명합니다.비트 컬렉션
BitArray 및 BitVector32 컬렉션 형식을 설명합니다.특수 컬렉션
NameValueCollection, StringDictionary 및 StringCollection과 같은 특수 용도의 컬렉션을 설명합니다.컬렉션 만들기 및 조작
최적의 컬렉션 형식 선택, 컬렉션 열거, 다중 스레드가 있는 컬렉션 사용 및 컬렉션 정렬을 설명합니다.제네릭 컬렉션 사용 기준
제네릭 컬렉션 형식의 사용을 설명합니다.
참조
Array
공용 언어 런타임에서 모든 배열의 기본 클래스로 사용할 배열을 작성, 조작, 검색 및 정렬하는 메서드를 제공하는 Array 클래스의 주요 기능을 설명합니다.System.Collections
다양한 개체 컬렉션을 정의하는 인터페이스 및 클래스를 포함하는 System.Collections 네임스페이스에 대한 참조 문서를 제공합니다.System.Collections.Generic
제네릭 컬렉션을 정의하는 인터페이스 및 클래스를 포함하는 System.Collections.Generic 네임스페이스에 대한 참조 문서를 제공합니다.System.Collections.Specialized
특수 컬렉션 및 강력한 형식의 컬렉션을 포함하는 System.Collections.Specialized 네임스페이스에 대한 참조 문서를 제공합니다.