[Java] 컬렉션 프레임워크 구조

lkc9898·2022년 6월 10일

Java

목록 보기
20/25
post-thumbnail

컬렉션 프레임워크란?

컬렉션 프레임워크는 객체나 데이터들을 효율적으로 관리(추가, 삭제, 검색, 저장)를 하기 위해 사용되는 라이브러리이다.

왜 사용하는가?

데이터들을 효율적으로 관리 하기 위해 사용된다. 예를 들어 배열을 사용하다 보면 여러 비효율적인 문제가 생기는데, 대표적으로 배열의 크기가 생성할 때 결정되며 그 크기가 고정적이기 때문에 크기가 넘어가면 데이터를 저장할 수 없다는 문제점이 발생한다. 또 데이터를 삭제하면 해당 인덱스의 데이터는 비어있어 메모리가 낭비되기도 하는 등 이러한 단점들을 보완하기 위해 사용된다.

컬렉션 프레임워크의 주요 인터페이스로 List, Set, Map이 있다. 이 중 List와 Set 인터페이스는 컬렉션 인터페이스를 상속받고 Map 인터페이스는 구조상의 차이로 인해 별도로 정의된다.

각 인터페이스의 특징

인터페이스특징구현 클래스
List순서가 있고 중복 가능ArrayList, Vector, Stack, Linked List 등
Set순서가 없고 중복 불가능HashSet, TreeSet 등
Map키(key)와 값(value)이 한 쌍, 순서가 없고 키는 중복이 불가하고 값은 중복이 가능하다HashMap, HashTable, TreeMap 등

컬렉션 인터페이스 주요 메서드

List와 Set이 포함된 컬렉션 인터페이스에서 제공하는 메서드 이다.

메서드타입기능
add(Object o) /
addAll(Collection c)
boolean주어진 객체 / 컬렉션의 객체들을 추가
contains(Object o) /
containsAll(Collection c)
boolean주어진 객체 / 컬렉션이 저장 되어 있는지 여부
Iterator()Iterator컬렉션의 iterator를 반환
clear()void컬렉션에 저장된 모든 객체를 삭제
equals(Object o)boolean객체 o 와 동일한지 비교
isEmpty()boolean컬렉션이 비어있는지 여부
size()int저장되어 있는 전체 객체 수를 반환
remove(Object o) /
removeAll(Collection c)
boolean주어진 객체 / 컬렉션을 삭제하고 성공 여부

0개의 댓글