컬렉션 프레임워크

임성혁·2022년 8월 27일

자바 기초

목록 보기
29/32

1. 정의

  • 컬렉션 : 여러 객체를 모아 놓은 것
  • 프레임워크 : 표준화, 정형화된 체계적인 프로그래밍 방식
  • 컬렉션 프레임워크
    • 다수의 객체를 다루기 위한 표준화된 프로그래밍 방식
    • java.util 포함, jdk 1.2부터 포함

2. 핵심 인터페이스

  • List interface
    • 순서 있음, 중복 허용
    • 구현 클래스 : ArrayList, LinkedList, Stack, Queue, Vector 등
  • Set interface
    • 순서 없음, 중복 안됨
    • 구현 클래스 : HashSet
  • Map interface
    • key, value의 쌍으로 이루어진 데이터의 집합
    • 순서 유지 안됨, key는 중복 안됨, value 중복 허용
    • 구현 클래스 : HashMap, TreeMap

3. Collection 인터페이스 메소드

  • add()
  • clear()
  • contain(Object o)
  • isEmpty()
  • remove(Object o)
  • removeAll()
  • size()
  • Iterator()
  • addAll(Collection c) : 합집합
  • removeAll(Collection c) : 차집합
  • retainAll(Collection c) : 교집합
  • containAll(Collection c) : 부분집합 (포함 됐는지 아닌지 확인)

4. List, Set 인터페이스 메소드

  • get(int index)
  • indexof(Object o) (set 제외)
  • lastindexOf(Object o) (set 제외)
  • List subList(int from, int to)

5. Map 인터페이스 메소드

  • containKey(Object key) : key 객체의 존재 확인
  • containValue(Object value) : value 객체의 존재 확인
  • equals : 동일한 map인지 판단
  • get(Object key)

6. Stack과 Queue

  • Stack : LIFO 구조
    • redo/undo
  • Queue : FIFO 구조
    • 순서 대기 있는 객체

7. Enumeration. Iterator, ListIterator

  • Enumeration은 Iterator의 구버전
  • Iterator는 컬렉션에 저장된 요소들을 읽어오는 방법을 표준화 한 객체
    • hasNext() : 읽어 올 요소가 존재하는지
    • next() : 다음 요소 읽기
    • remove() : next()로 가져온 요소를 삭제
  • ListIterator
    • Iterator의 상위 호환 버전 (단방향 -> 양방향)
    • hasPrevious()
    • nextIndex() : 다음 요소의 index

8. HashMap

  • 데이터를 키와 값의 쌍으로 저장
  • hashing 기법으로 데이터 저장, 데이터가 많아도 검색 빠름
  • method
    • put(k, v)
    • remove(k)
    • replace(k, v) : 지정된 k의 v로 대체
profile
열정

0개의 댓글