다음을 통해 공유


컬렉션 및 데이터 구조

업데이트: 2007년 11월

서로 밀접하게 관련된 데이터를 컬렉션으로 그룹화하면 좀 더 효율적으로 처리할 수 있습니다. 서로 다른 코드를 작성하여 각 개별 개체를 처리하는 대신, 동일한 코드를 사용하여 컬렉션의 모든 요소를 처리할 수 있습니다.

컬렉션을 관리하려면 Array 클래스 및 System.Collections 클래스를 사용하여 컬렉션의 개별 요소 또는 일정 범위의 요소를 추가, 제거 및 수정합니다. 전체 컬렉션을 다른 컬렉션에 복사할 수도 있습니다.

일부 Collections 클래스에는 정렬 기능이 있으며, 대부분 인덱싱되어 있습니다. 메모리 관리는 자동으로 처리되고 컬렉션의 용량은 필요에 따라 확장됩니다. 동기화는 컬렉션의 멤버에 액세스할 때 스레드로부터의 안전성을 제공합니다. 일부 Collections 클래스는 컬렉션을 읽기 전용이나 고정된 크기로 만드는 래퍼를 생성할 수 있습니다. 모든 Collections 클래스는 해당 요소간 이동을 쉽게 할 수 있는 자신의 열거자를 생성할 수 있습니다.

.NET Framework 버전 2.0에서 제네릭 컬렉션 클래스는 새로운 기능을 제공하며 강력한 형식의 컬렉션을 손쉽게 만들 수 있도록 합니다. System.Collections.GenericSystem.Collections.ObjectModel 네임스페이스를 참조하십시오.

LINQ to Objects 기능을 사용하면 개체 형식이 IEnumerable 또는 IEnumerable<T>을 구현하는 경우 LINQ 쿼리를 통해 메모리 내 개체에 액세스할 수 있습니다. LINQ 쿼리는 데이터 액세스를 위한 일반 패턴을 제공하고, 표준 foreach 루프에 비해 간결하고 쉽게 읽을 수 있으며, 필터링, 순서 지정 및 그룹화 기능을 제공합니다. 또한 LINQ 쿼리를 통해 성능을 향상시킬 수도 있습니다. 자세한 내용은 LINQ to Objects를 참조하십시오.

단원 내용

참조

  • Array
    공용 언어 런타임에서 모든 배열의 기본 클래스로 사용할 배열을 작성, 조작, 검색 및 정렬하는 메서드를 제공하는 Array 클래스의 주요 기능을 설명합니다.

  • System.Collections
    다양한 개체 컬렉션을 정의하는 인터페이스 및 클래스를 포함하는 System.Collections 네임스페이스에 대한 참조 문서를 제공합니다.

  • System.Collections.Generic
    제네릭 컬렉션을 정의하는 인터페이스 및 클래스를 포함하는 System.Collections.Generic 네임스페이스에 대한 참조 문서를 제공합니다.

  • System.Collections.Specialized
    특수 컬렉션 및 강력한 형식의 컬렉션을 포함하는 System.Collections.Specialized 네임스페이스에 대한 참조 문서를 제공합니다.