Java

[JAVA] Set 사용법

촙오 개발자 2025. 1. 26. 11:30
반응형

Set

  • 중복을 허용하지 않는 컬렉션
  • LinkedHashSet, TreeSet을 제외하고는 순서를 조방하지 않음

 

HashSet

  • 순서를 보장하지 않음
  • 빠른 검색과 삽입속도 제공
Set<String> set = new HashSet<String>();

set.add("A");
set.add("B");
set.add("C");
set.add("D");

System.out.println(set); // 순서를 보장 x

 

 

LinkedHashSet

  • 순서를 보장함
Set<String> set = new LinkedHashSet<String>();

set.add("A");
set.add("B");
set.add("C");
set.add("D");

System.out.println(set); // A, B, C, D 순서를 보장

 

TreeSet

  • 기본적으로 오름차순 정렬
Set<String> set = new TreeSet<String>();

set.add("A");
set.add("C");
set.add("D");
set.add("B");

System.out.println(set); // A, B, C, D 정렬된 순서

 

추가

  • add(E e)
Set<String> set = new HashSet<String>();

set.add("A");
set.add("B");
set.add("C");
set.add("D");
set.add("A");

System.out.println(set); // 순서를 보장 x A, B, C, D 무작위 순서로 출력

 

  • contains(Object o)
Set<String> set = new HashSet<String>();

set.add("A");
set.add("B");
set.add("C");
set.add("D");

System.out.println(set.contains("D")); // true

 

삭제

  • remove(Object o)
Set<String> set = new HashSet<String>();

set.add("A");
set.add("B");
set.add("C");
set.add("D");

set.remove("C");

System.out.println(set); // 순서를 보장 x A, B, D 무작위 순서로 출력

 

  • clear()
Set<String> set = new HashSet<String>();

set.add("A");
set.add("B");
set.add("C");
set.add("D");

set.clear();

System.out.println(set.size()); // 0

 

크기

  • size()
Set<String> set = new HashSet<String>();

set.add("A");
set.add("B");
set.add("C");
set.add("D");

System.out.println(set.size()); // 4

 

 

반응형