1. 컬렉션 (Collection) 이란?
ㅇ 하나의 단위로 다룰 수 있는 항목들의 집합
- 여러(복수의) 자료들을 규칙있게 담아놓은 장소/자료구조
. 한번에 많은 복합 자료의 저장,이용이 가능하도록,
. 자료구조,알고리즘들을 함께 엮어 설계하고, 이를 구현한 집합체
※ 프로그래밍 언어 또는 환경 마다, 프로그램 작성 편의 측면에서,
- 데이터에 쉽게 접근하고, 쉽게 사용할 수 있는, 효과적으로 조직화할 수 있도록 도와주는,
다양한 실무적 도구들(컬렉션)을, 아래와 같이 제공하고 있음
* 例)
. 파이썬 : 리스트,튜플,사전,집합 등
. 자바스크립트 : Map,Set,객체,배열 등
. 자바 언어 : 아래 2.항 참조
. 웹 : DOM 요소 컬렉션 등
2. [자바언어] 컬렉션 (Collection)
ㅇ 자바언어 컬렉션 특징
- 설계,구현을 재사용할 수 있도록,
. 일련의 협업화된 형태로 클래스들을 제공케 함
- 어떠한 자료형도 저장 가능
. 단, 기본형은 래퍼로 감싼 래퍼 클래스가 사용됨
- 자바는, 컬렉션 인터페이스 및 컬렉션 클래스로 구분시켜 제공함
. 컬렉션 인터페이스 형식을 통해 제공된 컬렉션 클래스를 간단히 사용 가능
. 또는, 컬렉션 인터페이스 형식에 맞춰 스스로 클래스를 작성/구현할 수도 있음
- java.util 패키지 내 포함됨
ㅇ 구성 요소
- 인터페이스 : 컬렉션을 표현하는 추상적인 기능
- 알고리즘 : 정렬,연산 등 실용적인 알고리즘들을 내포함
- 구현 : 실무에서 그대로 사용 가능할 수 있을 정도
ㅇ 자료 특성에 따른 구분
- 리스트 : 순서 있고, 중복 가능
- 집합 : 순서 없고, 중복 불가능
- 맵 : (키,값) 쌍의 형태
- 큐 : 한쪽에서 삽입되고, 다른쪽에서 삭제되는 리스트 구조의 일종
- 해시 테이블