jade-devlab 님의 블로그

[Java] 코딩테스트 대비 자바 Collections(List, Set, Map) 정리 본문

back-end/java

[Java] 코딩테스트 대비 자바 Collections(List, Set, Map) 정리

bibi-jade 2025. 9. 7. 00:34

* 이번에 코딩테스트를 준비하며 자바 List, Set, Map 자료형에 대해서 공부한 내용들을 정리했습니다!

 


1. List 

  • 순서(인덱스)가 있는 자료구조
  • 중복을 허용한다
  • 인덱스를 통해 값에 접근이 가능하다
  • 삽입 순서를 그대로 유지한다 
  • 구현체 : LinkedList, *ArrayList, Vector 등이 있다

    -> 그 중에서도 가장 많이 쓰게 되는 ArrayList에 대해서 정리해보겠습니다..!

<선언> 

List<Integer> list = new ArrayList<>();

 

<메소드> 

추가

 

  • 마지막에 추가 : list.add(value);
  • 특정 인덱스에 값을 추가하는 경우 : list.add(int index, value);

 

삭제

  • 인덱스를 통해 삭제하는 경우 : list.remove(int index) -> 해당 인덱스의 객체를 삭제하고 반환한다  
  • 특정 값을 통해 삭제하는 경우 : list.remove(Integer.valueOf(int index)) -> 해당 객체를 삭제하고 boolean 을 반환한다  
    (ex) 문자열의 경우 : list.remove("apple");

조회 : 

 

  • 특정 인덱스 값 가져오기  : list.get(int index);
  • 리스트 크기 확인 : list.size();

수정 : list.set(int index, value); ->  인덱스 1 위치의 값을 100으로 변경



2. Set

  • 집합 개념을 갖는 자료구조 
  • 중복된 원소를 갖지 않는다 -> 같은 값이 들어갈 경우 하나만 들어간다
  • 순서가 없다 : 삽입 순서를 보장하지 않는다
  • 구현체 : HashSet, LinkedHashSet, TreeSet 등이 있다 
    HashSet : 가장 많이 사용하는 구현체
    TreeSeet : 원소들을 오름차순으로 정렬해서 저장한다(Comparable, Comparator 필요) 
    LinkedHashSet : 삽입 순서를 유지한다..!

<선언> 

Set<Integer> set = new HashSet<>();


<메소드>
추가 : set.add(value)

삭제 : set.remove(value) 
조회

  • 값 추가 유무 확인하기 : set.contains(value) 
  • 크기 확인 : set.size();
  • 비어있는지 확인 : set.isEmpty();


3. Map

  • 키 - 값 쌍으로 데이터를 저장하는 자료구조
  • 키는 중복이 불가능하지만, 값은 중복이 가능하다.
  • 키를 이용해서 값을 검색할 수 있다
  • 구현체 : HashMap, TreeMap, HashTable

<선언> 

Map<Integer> map = new HashMap<>();


<메소드> 

추가 : map.put(key, value)

조회 : 

  • 키를 통해 값을 조회 : map.get(key)
  • 해당 키가 존재하는지 확인 : map.containsKey(key) 

삭제 : map.remove(key) -> 특정 키 값으로 삭제하고 value 를 반환한다 

 

<참고 자료> 
- 리스트

https://pongic.tistory.com/3

 

[Java] 리스트 (List) 정리

리스트 (List) 란?배열과 같이 객체를 일렬로 늘어놓은 구조를 가지고 있다. 객체를 인덱스(index)로 관리하기 때문에 객체를 저장하면 자동으로 인덱스가 부여되고, 인덱스로 객체를 검색, 추가,

pongic.tistory.com

- 맵 
https://devlogofchris.tistory.com/41

 

[JAVA]Map이란? (HashMap, Hashtable, TreeMap)

Map 컬렉션 클래스 Map 인터페이스는 Collection 인터페이스와는 다른 저장 방식을 가집니다. Map 인터페이스를 구현한 Map 컬렉션 클래스들은 키와 값을 하나의 쌍으로 저장하는 방식(key-value 방식)을

devlogofchris.tistory.com

 

- 셋 
https://tosuccess.tistory.com/145

 

[자바/java] Set, HashSet 사용법 데이터 삽입, 삭제, 출력

Set이란? 자바 컬렉션에 HashSet은 Set 인터페이스의 구현 클래스다. Set은 한국말로는 "집합"이고, 따로 저장 순서를 유지하지는 않는다. 또한 중복 값을 허용하지 않는다는 특징을 갖고 있다. *순서

tosuccess.tistory.com