Java/컬렉션 프레임워크(Collection Framework)

1. 컬렉션 프레임워크(Collection FrameWork)

mozzi329 2022. 7. 14. 18:26
728x90
 

 

     

    컬렉션 프레임워크는 공구함이다.

    📌 컬렉션 프레임워크(Collection Framework)

    컬렉션이란 여러 데이터들의 집합을 의미한다. 즉, 여러 데이터들을 그룹으로 묶어놓은 것을 컬렉션이라고 하며, 이러한 컬렉션을 다루는 데에 있어 편리한 메서드들을 미리 정의해놓은 것을 컬렉션 프레임워크라고 한다.

    ✔️ 컬렉션 프레임워크의 구조

    많다...

    ❗️ List

    1. List는 데이터의 순서가 유지되며, 중복 저장이 가능한 컬랙션을 구현하는 데 사용된다.
    2. ArrayList, Vector, LinkedList 등이 List 인터페이스를 구현한다.

    ❗️ Set

    1. Set은 데이터의 순서가 유지되지 않으며, 중복 저장이 불가능한 컬렉션을 구현하는 데 사용된다.
    2. HashSet, TreeSet 등이 Set 인터페이스를 구현한다.

    ❗️ Map

    1. Map은 키(key)와 쌍으로 데이터를 저장하는 컬렉션을 구현하는 데 사용된다.
    2. 데이터의 순서가 유지되지 않으며, 키는 값을 식별하기 위해 사용되므로 중복 저장이 불가능하지만, 값은 중복 저장이 가능하다.
    3. HashMap, HashTable, Properties 등

     

    이 셋 중에서 List와 Set은 서로 공통점이 많아 위 그림과 같이 Collection이라는 인터페이스로 묶인다. 즉, 이 둘의 공통점이 추출되어 추상화한 것이 바로 Collection이라는 인터페이스이다.

     

    ✔️ Collection의 인터페이스

    기능 리턴 타입 메소드 설명
    객체 추가 boolean add(Object o)
    addAll(Collection c)
    주어진 배열에 컬렉션의 객체를 저장해서 반환
    객체 검색 boolean add(Object o)
    addAll(Collection c)
    주어진 객체 및 컬렉션이 저장되어 있는지 여부를 리턴
    Iterator iterator() 주어진 객체 및 컬렉션이 저장되어 있는지 여부를 리턴
    boolean equals(Object o) 컬렉션이 동일한지 여부를 확인
    boolean isEmpty() 컬렉션이 비어있는지 여부를 확인
    int size() 저장되어 있는 전체 객체 수를 리턴
    객체 삭제 void clear() 컬렉션에 저장된 모든 객체를 삭제
    boolean remove(Object o)
    removeAll(Collection c)
    주어진 객체 및 컬렉션을 삭제하고 성공 여부를 리턴
    boolean retainAll(Collection c) 주어진 컬렉션을 제외한 모든 객체를 컬렉션에서 삭제하고, 컬렉션에 변화가 있는지의 여부를 리턴
    객체 변환 boolean toArray() 컬렉션에 저장된 객체를 객체배열(Object [])로 반환
      boolean toArray(Object[] a) 컬렉션에 저장된 객체를 객체배열(Object [])로 반환

     

    📌 어떻게 잘 사용할 수 있을까?