[Java] - 컬렉션 프레임워크 Collections Framework

janjanee·2021년 6월 22일
0

Java

목록 보기
11/17
post-thumbnail

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

컬렉션 프레임워크란?

데이터 그룹을 저장하는 클래스들을 표준화한 설계

  • 컬렉션 -> 다수의 데이터
  • 프레임워크 -> 표준화된 프로그래밍 방식

컬렉션 프레임워크 계층구조


출처 : https://www.geeksforgeeks.org/java-collection-tutorial/


컬렉션 프레임워크 핵심 인터페이스와 특징

핵심 인터페이스로는 List, Set, Map 이 있다.

  • ListSet은 추가, 삭제, 검색과 관련한 공통기능을 모아 Collection 인터페이스로 정의
  • Map키와 값을 하나의 쌍으로 묶어서 관리하는 구조여서 List, Set과는 사용방법이 전혀 다름
인터페이스특징구현 클래스
List- 순서가 있는 데이터 집합
- 중복 O
ArrayList, LinkedList, Stack, Vector대기자 명단
Set- 순서를 유지하지 않는 데이터 집합
- 중복 X
HashSet, TreeSet양의 정수집합, 소수의 집합
Map- 키(key)와 값(value)의 쌍으로 이루어진 데이터 집합
- 순서를 유지하지 않음
- 키는 중복 O, 값은 중복 X
HashMap, TreeMap, Hashtable, Properties우편번호, 지역번호

컬렉션 프레임워크의 컬렉션 클래스들은 List, Set, Map 중의 하나를 구현하고 있으며,
구현한 인터페이스의 이름이 클래스의 이름에 포함되어있어서 이름만으로 클래스의 특징을 쉽게 알 수 있다.

그러나 Vector, Stack, Hashtable, Properties와 같은 클래스들은 컬렉션 프레임워크가
만들어지기 이전부터 존재했기 때문에 컬렉션 프레임워크 명명규칙을 따르지 않는다.

Vector나 Hashtable과 같은 기존의 컬렉션 클래스들은 호환을 위해서 설계를 변경해 남겨두었지만
가능하면 사용하지 말고 ArrayList와 HashMap을 사용하자.


각 인터페이스별로 파트를 세분화하여 포스팅한 목록이다.

List 인터페이스

Stack, Queue

Iterator, Comparator, Comparable

Set 인터페이스

Map 인터페이스


References

profile
얍얍 개발 펀치

0개의 댓글