반응형
SMALL
집합 Set
중복되지 않는 데이터 요소들의 모임 ; 집합
특징
1.데이터는 중복되지 않는다
2.순서가 있을수도 있다
3.정렬될수 있다
Set 구현 클래스
HashSet | LinkedHashSet | TresSet |
빠른 접근속도 | ||
중복 허용 안됨 | 중복 허용 안됨 | 중복 허용안됨 |
순서 제공 안됨 | 삽입 순서에 의해 반복 | 정렬된 순서에 의해 반복 |
데이터 저장방식이 HashTable 이용 | ||
HashMap을 이용하여 구현된 형태이다 key = set의 값 value = object |
HashSet을 상속하여 구현된 형태이다 key = set의 값 value = object |
TreeMap을 이용하여 구현된 형태이다 key = set의 값 value = object |
인덱스 위치를 통해 저장과 접근을 하는것이 아닌 key를 이용하고 싶을경우 사용한다 | 값의 저장된 순서가 중용할때 사용한다 | 저장되는 데이터의 갯수가 몇개인지 예상되지 않는 경우 사용 |
데이터의 크기가 예상되는 경우 사용한다 | 정렬된 값이 필요할때 사용한다 | |
삽입 삭제가 빈번할경우 사용한다 | 삽입 삭제가 빈번하지 않을때 사용한다 |
메소드
메소드 | 내용 |
add(객체) | 객체를 추가한다 |
clear() | 모든 객체를 제거한다 |
contains(객체) | 객체가 포함되어있으면 true 한다 |
equals(객체) | 객체가 동일한지 비교하여 true 한다 |
isEmpty() | 집합이 비어있다면 true 한다 |
remove(객체) | 객체를 제거한다 |
size() | 집합의 크기를 int 로 반환한다 |
toArray() | 집합의 모든 데이터를 배열로 반환한다 |
집합 set 활용
2021년에 접속한 아이디 ,2022년에 접속한 아이디를 찾는다고 하면, 중복된 아이디를 제거하고 리스트업해야하기 때문에 set 자료구조 방법을 사용할수 있다
반응형
LIST