본문 바로가기

Language/Java

[Java] Collection 프레임워크

 

컬렉션이란 여러 데이터의 집합을 의미한다.

이러한 컬렉션을 다루는데에 있어 편리한 메서드들을 미리 정의해 놓은 것을 컬렉션 프레임워크라고 한다.

 

컬렉션 프레임워크는 주요 인터페이스로 List, Set, Map을 제공한다.

 

List

데이터의 순서가 유지되며, 중복 저장이 가능한 컬렉션을 구현하는데 사용된다.



[Java] List 인터페이스

List 인터페이스 배열과 같이 객체를 일렬로 늘어놓은 구조를 가지고 있다. 객체를 저장하면 자동으로 인덱스가 부여되고, 인덱스로 객체를 검색, 추가, 삭제할 수 있는 등의 여러 기능을 제공한

kangkangsulae.tistory.com

 

Set

데이터의 순서가 유지되지 않으며, 중복 저장이 불가능한 컬렉션을 구현하는데 사용된다.



[Java] Set 인터페이스

Set 인터페이스 수학에서의 집합과 비슷하다. 요소의 중복을 허용하지 않고, 저장 순서를 유지하지 않는 컬렉션 기능 리턴 타입 메소드 설명 객체 추가 boolean add(Object element) 주어진 객체를 추가

kangkangsulae.tistory.com

 

Map

키와 값의 쌍으로 데이터를 저장하는 컬렉션을 구현하는데 사용된다.



[Java] Map 인터페이스

Map 인터페이스 Map 인터페이스는 키(key)와 값(value)으로 구성된 객체인 Entry 객체를 저장하는 구조로 되어있다. Entry 객체는 키와 값을 각각 Key 객체와 Value 객체로 저장한다. 즉, key, value 값은 기본

kangkangsulae.tistory.com

 

Iterator(반복자)

컬렉션에 저장된 요소들을 순차적으로 읽어오는 인터페이스

 

Collection 인터페이스에서는 Iterator 인터페이스를 구현한 클래스의 인스턴스를 반환하는 메소드인 iterator()가 정의되어져 있다.

ArrayList<String> list = new ArrayList<>();
Iterator<String> iterator = list.iterator();

 

 

Iterator 인터페이스에 정의된 메서드로, iterator()를 통해 만들어진 인스턴스는 아래의 메서드를 사용할 수 있다.

메서드 설명
hasNext() 읽어올 객체가 남아 있으면 true를 리턴하고, 없으면 false를 리턴한다.
next() 컬렉션에서 하나의 객체를 읽어온다.
이때, next()를 호출하기 전에 hasNext()를 통해 읽어올 다음 요소가 있는지 먼저 확인해야 한다.
remove() next()를 통해 읽어온 객체를 삭제한다. next()를 호출한 다음에 remove()를 호출해야 한다.

 

'Language > Java' 카테고리의 다른 글

[Java] List<E> 인터페이스  (0) 2023.05.15
[Java] Map 인터페이스  (0) 2023.05.15
[Java/ERROR] ConcurrentModificationException  (0) 2022.12.09
[Java] Object 클래스 메소드 - toString()  (0) 2022.11.07
[Java] Object 클래스  (0) 2022.11.07