본문 바로가기
Java

JAVA List Set Map

by titlejjk 2023. 5. 8.

Java에서 List, Set, Map은 Java Collection Framework에서 데이터를 저장하고 관리하기 위해 제공하는 자료구조로 구분할 수 있다.

 

List

  • 순서가 있고, 중복을 허용하는 자료구조
  • 저장공간이 필요에 따라 자동으로 늘어나는 가변적인 배열
  • ArrayList, LinkedList 등이 List의 구현체로 사용된다.
  • 예시👉학생들의 성적을 저장하는 List
    ["John" : 90, "Mike" : 80, "Jane" : 95, "Mike" : 85]

Set

  • 순서가 없고, 중복을 허용하지 않는 자료구조
  • HashSet, TreeSet 등이 Set의 구현체로 사용된다.
  • 예👉학생들의 이름을 저장하는 Set
    ["John", "Mike", "Jane"]

Map

  • Key-Value 형태로 데이터를 저장하는 자료구조
  • Key는 중복을 허용하지 않고, Value는 중복을 허용한다.
  • HashMap, TreeMap 등이 Map의 구현체로 사용되다.
  • 예시👉학생들의 이름과 성적을 저장하는 Map
    ["John" : 90, "Mike" : 85, "Jane" : 95]

List, Set, Map 은 각각의 특징에 따라 적합한 상황이 다르다. 예를 들어, 데이터의 중복을 허용하지 않아야 하는 경우 Set을 사용하는 것이 적합하다. 반면, 데이터의 순서가 중요하다면 List 를 사용하는 것이 좋다. 또한, Key-Value 형태로 데이터를 저장해야 하는 경우 Map을 사용하는 것이 유용하다.

 

또한, List, Set, Map은 자료구조를 선택할 때 고려해야 할 성능적인 측면도 있다. 예를 들어, ArrayList는 데이터를 순차적으로 저장하고 조회할 때 빠르지만, 중간에 데이터를 삽입하거나 삭제하는 경우 비효율적이다. 이와 달리 LinkedList는 중간에 데이터를 삽입하거나 삭제하는 경우 빠르지만, 데이터를 조회하는 경우 ArrayList 보다 느리다.

 

따라서, 자료구조를 선택할 때는 사용하려는 데이터의 특징과 성능적인 측면을 고려하여 적절한 자료구조를 선택해야 한다.

'Java' 카테고리의 다른 글

JAVA Thread  (1) 2023.05.11
JAVA Exception  (0) 2023.05.10
JAVA Collection  (0) 2023.05.08
JAVA HashMap  (0) 2023.05.08
JAVA ArrayList  (0) 2023.05.04

댓글