Java - Collections framework

iseon_u·2022년 5월 22일
0

Java

목록 보기
51/77
post-thumbnail

Collections framework 컬렉션 프레임워크


💡 여러번 반복해서 빠르게 전체적으로 공부, 실습 위주의 공부

collection 컬렉션

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

framework 프레임워크

  • 표준화, 정형화된 체계적인 프로그래밍 방식
  • 유지보수가 쉬워진다.

library 라이브러리

  • 만들어져 있는 기능을 사용

collections framework 컬렉션 프레임워크

  • 컬렉션 (다수의 객체) 을 다루기 위한 표준화된 프로그래밍 방식
  • 컬렉션을 쉽고 편리하게 다룰 수 있는 다양한 클래스를 제공 (저장, 삭제, 검색, 정렬)
  • java.util 패키지에 포함, JDK1.2 부터 제공

collection class 컬렉션 클래스

  • 다수의 데이터를 저장할 수 있는 클래스
  • Vector, ArrayList, HashSet

컬렉션 프레임워크 핵심 인터페이스 ⭐

  1. List
    • 순서 ⭕, 중복 ⭕
  2. Set
    • 순서 ❌, 중복 ❌
  3. Map
    • 순서 ❌, 키 중복 ❌, 값 중복 ⭕
인터페이스특징
List순서가 있는 데이터의 집합, 데이터의 중복을 허용한다. ✅
ex) 대기자 명단구현 클래스 : ArrayList, LinkedList, Stack, Vector
Set순서를 유지하지 않는 데이터의 집합, 데이터 중복을 허용하지 않는다.❌
ex) 양의 정수 집합구현 클래스 : HashSet, TreeSet
Map키 (key) 와 값 (value) 의 쌍 (pair) 으로 이루어진 데이터의 집합, 순서는 유지되지 않으며, 키는 중복을 허용하지 않고, 값은 중복을 허용한다.
ex) ID - PW구현 클래스 : HashMap, TreeMap, Hashtable, Properties

Collection 인터페이스

  • List 와 Set 인터페이스의 공통 부분으로 만든 인터페이스

메서드설명
boolean add(Object o)
boolean addAll(Collection c)지정된 객체(o) 또는 Collection(c) 의 객체들을 Collection에 추가
void clear()Collection의 모든 객체를 삭제
boolean contains(Object o)
boolean containsAll(Collection c)지정된 객체(o) 또는 Collection 의 객체들이 Collection 에 포함되어 있는지 확인 검색
boolean isEmpty()Collection 이 비어있는지 확인
boolean remove(Object o)
boolean removeAll(Collection c)지정된 객체(o) 또는 Collection에 포함된 객체들을 삭제
int size()Collection에 저장된 객체의 개수를 반환

List 인터페이스 - 순서 ⭕, 중복 ⭕

메서드설명
void add(int index, Object element)
boolean addAll(int index, Collection c)지정된 위치(index)에 객체(element) 또는 걸렉션에 포함된 객체들을 추가
Object get(int index)지정된 위치에 있는 객체를 반환, 읽기
int indexOf(Object o)지정된 객체의 위치를 반환 (순방향 검색)
int lastIndexOf(Object o)지정된 객체의 위치를 반환 (역방향 검색)
Object remove(int index)지정된 위치에 있는 객체를 삭제하고 반환
Object set(int index, Object element)지정된 위치에 객체를 변경 저장
void sort(Comparator c)지정된 비교자로 List 정렬
List subList(int fromIndex, int toIndex)지정된 범위에 있는 객체를 반환
  • Collection 인터페이스의 자손이기 때문에 Collection 메서드도 포함

Set 인터페이스 - 순서 ❌, 중복 ❌

  • Set 인터페이스의 메서드는 Collection 인터페이스의 메서드와 동일
  • 집합과 관련된 메서드 (Collection 에 변화가 있으면 true, 아니면 false를 반환)

Map 인터페이스 - 순서 ❌, 키 중복 ❌, 값 중복 ⭕

  • LinkedHashMap : 순서가 필요할 때 사용
메서드설명
void clear()Map의 모든 객체를 삭제
boolean containsKey(Object key)지정된 key 객체와 일치하는 Map의 key객체가 있는지 확인 검색
boolean containsValue(Object value)지정된 value 객체와 일치하는 Map의 value 객체가 있는지 확인 검색
Object get(Object key)지정한 key 객체에 대응하는 value 객체 검색 후 반환
Object put(Object key, Object value)Map에 value 객체를 key 객체에 연결 (mapping) 하여 추가 저장
void putAll(Map t)지정된 Map의 모든 key-value 쌍을 추가
Object remove(Object key)지정한 key 객체와 일치하는 key-value 객체 삭제
Set entrySet()Map에 저장되어 있는 key-value 쌍을 Map.Entry 타입의 객체로 저장한 Set으로 읽은 값 반환
Set keySet()Map에 저장된 모든 key 객체 읽은 값 반환
Collection values()Map에 저장된 모든 value 객체를 읽은 값 반환
  • key + value 한 쌍을 Entry 엔트리라고 부른다.
profile
🧑🏻‍💻 Hello World!

0개의 댓글