재밌고 어려운 IT를 이해해보자~!

Section 16. 컬렉션 프레임워크 본문

JAVA Book Study

Section 16. 컬렉션 프레임워크

언제나즐거운IT 2024. 1. 1. 20:45

01. 컬레션 프레임워크

필요한 자료구조를 미리 구현하여 java.util 패키지에서 제공하고 있다. 이를 '컬렉션 프레임워크' 라고 한다.

컬렉션은 List(리스트), Queue(큐), Tree(트리)등의 자료구조를 뜻하고 프레임워크는 클래스와 인터페이스를 묶어 놓은 개념.

02. 제네릭

저장가능 데이터 타입이 Object이므로 어떤 타입의 데이터도 저장할 수 있지만,

제네릭을 사용하지 않으면 모든 데이터 타입을 담는 것이 가능해 데이터를 추출할 때 마다 어떤 데이터타입인지 확인을 해줘야하기 때문에, 일정한 데이터 타입을 담기 위해 선언한다. 

클래스 생성시에도 사용가능

public class 클래스명 <T> { ... }
public interface 인터페이스명<T> { ... }

 

타입 변수 의미
<T> Type
<E> Element
<K> Key
<N> Number
<V> Value

03. Set 컬렉션

Set 컬렉션은 객체의 저장 순서를 저장하지 않고, 중복을 허용하지 않는다.

데이터를 저장할 떄 순서 즉, index를 부여하지 않기 때문에 데이터가 입력된 순서로 출력된다는 보장이 없다.

HashSet 클래스

HashSet에 객체를 저장해야 한다면 해당 객체는 hashCode와 equals메서드를 사용해 비교해야한다.

HashSet의 데이터 삭제는 remove메서드를 사용하지만, 순서에 의한 삭제는 지원하지 않는다.

04. Map 컬렉션

Map은 List, Set과 달리 Map 인터페이스가 별도로 존재하며 데이터를 Key(키)와 Valye(값)으로 구분하여 지정하는 방식(key-value 방식)을 사용한다.

Map에서 Key는 중복될 수 없지만, value는 중복이 가능하다. 만약에 Key 값이 중복 입력 될 경우 해당하는 value값이 새로등록된 것으로 바뀐다 (update).

Map의 Key와 Value는 Entry라는 인터페이스를 상속한 객체에 저장되는데 Entry는 Map인터페이스 안에서 정의되는 내부 인터페이스를 말한다.

 

HashMap 선언 방법.

Map <KEY, V> map = new HashMap<KEY, V> ();

 

 

 

 

 

 

 

*참조

https://cocoon1787.tistory.com/527

'JAVA Book Study' 카테고리의 다른 글

Section 18. 스레드  (0) 2024.01.02
Section 17. 람다식  (0) 2024.01.02
Section 15. 기본 API 클래스  (2) 2024.01.01
Section 14. 예외 처리  (0) 2023.12.31
Section 13. 내부 클래스  (0) 2023.12.29
Comments