자바의 정석 10장 (27일차) - Collection Framework (Set/List/Map)

728x90

Collection Framework

정의:

Collection: 여러 객체(데이터)를 모아 놓은 것을 의미

 

Framework: 표준화, 정형화된 체계적인 프로그래밍 방식

  • 개인의 코딩 방식이 아닌 기준을 정한 코딩으로 다른 사람이 이해하고 수정하기 편하게 하기 위한 정형화
  • 대표적인 예시로 Spring Framework가 있음

Collection Framework: 컬렉션(다수의 객체)을 다루기 위한 표준화된 프로그래밍 방식

  • 컬렉션(다수의 데이터)을 다룰 수 있는 다양한 클래스를 제공

핵심 인터페이스(interface) 메서드:

데이터를 정리하기 위한 핵심 인터페이스: List, Set, Map

 

List: 순서가 있는 데이터의 집합이고 중복을 허용한다

  • 대표적인 예로 식당의 웨이팅 리스트, 누가 먼저 왔는지 중요하지만 이름의 중복은 관련이 없다.

Set: 순서를 유지하지 않는 데이터의 집합이고 중복이 안된다

  • 대표적인 예는 동물원의 동물 리스트, 어떤 종류가 몇마리 있는지 중요하지만 중복의 이름값은 허용하지 않는다.

Map: Key와 값(value)의 pair(짝)으로 이루어진 데이터의 집합이다. Key의 중복은 안되지만 값의 중복은 가능

  • 파이썬의 Dictionary 개념! 예시로 ID/PW가 있는데 ID는 중복이 안되지만 PW는 중복이 가능하다.

Collection 핵심 인터페이스 메서드

기본적으로 추가/삭제/검색으로 구성되있다.

 

출저: https://www.youtube.com/watch?v=RscGmop2Bzo&list=PLW2UjW795-f6xWA2_MUhEVgPauhGl3xIp&index=120 (자바의 정석)

 

Set & List 핵심 인터페이스 메서드

List와 Set은 Collection의 자손 클래스이기 때문에 Collection 클래스가 가지고 있는 메서드를 포함하여 가지고 있고 추가로 다른 메서드를 더 가지고 있다.

 

List와 Set을 통해 입력받은 데이터를 Collection 클래스에 저장받고 List, Set의 메서드로 정렬, 검색 등의 추가적인 옵션을 구현한다.

출저: https://www.youtube.com/watch?v=RscGmop2Bzo&list=PLW2UjW795-f6xWA2_MUhEVgPauhGl3xIp&index=120 (자바의 정석)

 

 

Collection에 데이터를 추가하거나 삭제할 때 사용되는 메서드들

이때 결과값을 boolean으로 출력한다.

 


Map 

순서가 상관이 없고 키 값의 중복을 허용하지 않지만 값(value)의 중복을 허용하는 클래스 (파이썬의 Dictionary)

 

Map의 인터페이스

여러 자손 클래스들이 아래와 같이 존재한다. 중요한 클래스HashMap과 TreeMap

 

HashMap < LinkedHashMap

  • Map이 순서를 상관하지 않는다면 LinkedHashMap같은 경우 순서를 고려할 수 있는 인터페이스  

SortedMap < TreeMap

 

인터페이스의 종류

출저: https://www.youtube.com/watch?v=RscGmop2Bzo&list=PLW2UjW795-f6xWA2_MUhEVgPauhGl3xIp&index=120 (자바의 정석)

 

728x90