[Java] 자료구조 - Collection

Java Collection Framework

Java Collection Framework란 일반적으로 재사용 가능한 컬렉션 데이터 구조를 구현하는 인터페이스 집합입니다.

Collection

Collection은 여러 원소(Element)를 담을 수 있는 자료구조를 뜻합니다.

아래는 Collection.java 인터페이스를 정의한 모습입니다.

public interface Collection<E> extends java.lang.Iterable<E>

아래는 Collection의 다이어그램 구조입니다.

Collection Methods

대표적인 Collection의 메서드들입니다.

  • int size() : 컬렉션의 총 개수를 반환
  • boolean add(E e) : 컬렉션에 요소 추가
  • boolean addAll(Collection<? extends E>) : 컬렉션의 모든 요소를 해당 컬렉션에 추가
  • boolean remove(Object o) : 컬렉션에 요소 삭제
  • boolean removeAll(Collection<? extends E>) : 컬렉션의 모든 요소를 해당 컬렉션에 추가
  • void clear() : 컬렉션의 모든 요소 삭제
  • boolean contains(Object o) : 컬렉션이 전달받은 객체를 포함하는지
  • boolean equals(Object o) : 컬렉션과 전달된 오브젝트가 같은지
  • boolean isEmpty() : 컬렉션이 비어 있는지
  • Object [] toArray() : 해컬렉션의 모든 요소를 Object 타입의 배열로 반환

Collection 의 3가지 유형

Collection을 상속받는 인터페이스 크게 3가지 입니다.

  • Set
  • List
  • Queue

List (Interface)

List 인터페이스는 순서대로 엘리먼트들을 나열한 컬렉션이며 중복 요소를 포함 가능하고 인덱스로 모든 엘리먼트에 접근 가능한게 특징이입니다. List 인터페이스를 상속받아 구현된 대표적인 클래스는 ArrayList, LinkedList, Vector, Stack 이 있습니다.

Set (Interface)

Set 인터페이스는 엘리먼트의 집합을 표현한 컬렉션이며 중복 요소를 포함할 수 없고 iterator 또는 foreach를 이용하여 탐색합니다.
Set 인터페이스로 구현된 클래스는 HashSet, LinkedHashSet, TreeSet 이 있습니다.

Queue (Interface)

Queue는 먼저 집어 넣은 데이터가 먼저 나오는 FIFO (First In First Out)구조로 저장하는 형식을 말합니다. 기본 컬렉션 작업 외에도 Queue는 삽입, 추출 및 검사 작업을 제공한다. Quque 인터페이스로 구현된 클래스는 PriorityQueue 가 있습니다.

좋은 웹페이지 즐겨찾기