자바의 정석 ch11-1~6 컬렉션 프레임워크

Luna·2023년 6월 7일
0

JAVA

목록 보기
18/32

ch11-1 컬렉션 프레임웍

  • 컬렉션(collection) : 여러 객체(데이터)를 모아 놓은 것을 의미
  • 프레임웍(framework) : 표준화, 정형화된 체계적인 프로그래밍 방식
    프로그램의 생산성이 올라감, 유지보수가 쉬워짐
  • 컬렉션 프레임웍 (collection framework)
    : 컬렉션(다수의 객체)를 다루기 위한 표준화된 프로그래밍 방식
    java.util 패키지에 포함. JDK 1.2부터 제공
    이 전에는 표준화가 되어있지 않았었다. -> 정리를 함

객체를 다룬다 -> 객체를 저장, 삭제, 검색, 정렬 하는 것
객체 : 다수의 데이터

  • 컬렉션 클래스 (collection class)
    : 다수의 데이터를 저장할 수 있는 클래스 (Vector, ArrayList, HashSet)

ch11-2 컬렉션 프레임웍의 핵심 인터페이스

1. List

  • 순서가 있는 데이터의 집합. 데이터의 중복을 허용한다.
    ex) 대기자 목록
  • 구현 클래스 : ArrayList, LinkedList, Stack, Vector 등

2. Set

  • 순서를 유지하지 않는 데이터의 집합. 데이터의 중복을 허용하지 않음.
    ex) 양의 정수 집합, 소수의 집합
  • 구현 클래스 : HashSet, TreeSet 등

3. Map

  • 키(key)와 값(value)의 쌍(pair)으로 이루어진 데이터의 집합.
  • 순서는 유지되지 않고, 키는 중복 허용이 안되고, 값은 중복 허용.
    ex) 우편번호, 지역번호(전화번호), id(key)/password(value)
  • 구현 클래스 : HashMap, TreeMap, Hashtable, Properties등

ch11-3 Collection 인터페이스의 메서드

  • Collection 인터페이스가 어떤 메서드들이 있는지 중점적으로 살펴본다.
  • 기본적으로 추가(add), 삭제(remove), 검색(contains) 등이 있다.

ch11-4 List 인터페이스의 메서드

  • 저장된 순서가 유지되고 중복을 허용한다.
  • Vector(옛날거), ArrayList(Vector를 개선), LinkedList 등
    ArrayList와 LinkedList가 핵심이다.
  • 추가(add), 삭제(remove), 가져오기(get), 변경하기(set)
    검색(indexOf 순방향, lastIndexOf 역방향), 정렬(sort), 일부(subList)
  • List와 Set은 Collection의 자손이므로 Collection이 갖고 있는 메서드도 갖고 있게 된다.

ch11-5 Set 인터페이스의 메서드

  • 순서가 없고 중복이 없다.
  • HashSet과 TreeSet이 핵심이다.
  • Collection 인터페이스와 동일한 메서드를 갖고 있다.
  • 집합과 관련된 메서드가 있다. (합집합, 교집합, 차집합, 교집합)
    반환 타입은 boolean이고 Collection에 변화가 있으면 true, 아니면 false.

ch11-6 Map 인터페이스의 메서드

  • 순서가 없고 키는 중복을 허용하지 않고, 값은 중복을 허용.
  • Key와 Value를 pair로 저장.
  • HashMap(Hashtable가 예전버전)과 TreeMap이 핵심이다.
    단, 원래 HashMap은 순서가 없지만 LinkedHashMap은 순서가 있다.
  • Hashtable은 동기화가 되어있지만 HashMap은 동기화가 안되어 있다.
    따로 동기화 처리 하는 방법이 있다.
  • 추가(put), 삭제(remove), 검색(containsKey/Value), 키 읽어오기 Set keySet(), 값만 읽어오기 Collection values(), 한 쌍 읽어오기 Set entrySet()
  • Collection values()은 List와 Set 어떤 타입으로 와도 상관 없기 때문에 반환 타입이 Collection이다.

0개의 댓글