Java Collection 란?
컬렉션은 다수의 데이터, 프레임워크는 표준화된 프로그래밍 방식을 의미한다.
데이터 그룹을 저장하는 클래스들을 표준화한 설계이다.
Collection Framework 에는 List, Map, Set 인터페이스를 기준으로 여러 구현체가 존재한다.
이런 Collection을 사용하는 이유는
다수의 Data를 다루는데 표준화된 클래스들을 제공해 주고
DataStructure를 직접 구현하지 않고 편하게 사용할 수 있기 때문이다.
또한 배열과 다르게 객체를 보관하기 위한 공간을 미리 생성하지 않아도 되므로
상황에 따라 객체의 수를 동적으로 정할 수도 있다.
List
List 인터페이스를 직접 @Override 를 통해 사용자가 정의하여 사용할 수도 있으며,
대표적인 구현체로는 ArrayList가 존재한다.
Map
대표적인 구현체로 HashMap이 존재한다.
Key - Value 의 구조로 이루어져 있으며 Map에 대한 구체적인 내용은 DataStructure 부분의 Hashtable과 일치한다.
Key 를 기준으로 중복된 값을 저장하지 않으며 순서를 보장하지 않는다.
Key에 대해서 순서를 보장하기 위해서는 LinkedHashMap을 사용한다.
Set
대표적인 구현체로 HashSet이 존재한다.
Value에 대해서 중복된 값을 저장하지 않는다.
사실 Set 자료구조는 Map의 Key - Value 구조에서 Key 대신에 Value가 들어가
Value를 Key 로 하는 자료구조일뿐이다.
마찬가지로 순서를 보장하지 않으며 순서를 보장해주기 위해서는 LinkedHashSet 을 사용한다.
참고
LinkedHashSet 이란?
더보기
HashSet과 동일한 구조를 가지지만 HashSet은 순서를 관리하지 않아 값을 출력할 때마다 다른 순서대로 출력이 됩니다
하지만 LinkedHashSet은 삽입된 순서대로 반복합니다
HashSet과 동일한 특징들이 있는데 마찬가지로 중복 값을 허용하지 않습니다
728x90
'추가 공부 > Java' 카테고리의 다른 글
[Java] Stack 사용방법 (0) | 2024.11.19 |
---|---|
[Java] Garbage Collection(GC) (3) | 2024.11.12 |
[Java] Final keyword (2) | 2024.11.10 |
[JAVA] Generic (1) | 2024.11.09 |