컬렉션 프레임워크 (Collection Framework) / List, Set, Map


컬렉션 프레임워크 (Collection Framework)


  • 프로그램 구현에 필요한 자료구조(Data Structure)를 구현해 놓은 JDK 라이브러리

  • 데이터를 저장하는 자료 구조와 데이터를 처리하는 알고리즘을 구조화하여 클래스로 구현해 놓은 것

  • 개발에 소요되는 시간을 절약하면서 최적화 된 알고리즘을 사용할 수 있음

  • 자바의 인턴페이스를 사용하여 구현

  • java.util 패키지에 구현되어 있음

    • List 인터페이스

    • Set 인터페이스

    • Map 인터페이스

  • List, Set > Collection 인터페이스 상속받음 / Map은 별도로 정의됨




List / Set / Map


  • List<E>

    • 순서가 있는 데이터의 집합 (객체를 순서에 따라 저장)

    • 데이터의 중복 허용

    • 자료구조 리스트 (배열, 연결리스트) 구현을 위한 인터페이스

    • ArrayList, Vector, LinkedList, Stack, Queue, …

  • Set<E>

    • 순서가 없는 데이터의 집합

    • 데이터의 중복 허용하지 않음

    • 유일한 값을 관리하는데 필요한 메서드 선언됨 > 아이디, 주민번호 등을 관리하는 데 유용

    • 저장된 순서와 출력되는 순서는 다를 수 있음

    • HashSet, TreeSet, …

  • Map<K, V>

    • 키(key)와 값(value)의 한 쌍(pair)으로 이루어지는 데이터의 집합

    • 순서가 없음

    • 키는 중복 허용하지 않음, 값은 중복 허용

    • HashTable, HashMap, Properties, TreeMap, …

Categories:

Java