List 컬렉션은 저장 순서를 유지하지만, Set 컬렉션은 저장 순서가 유지되지 않습니다.
또한 객체를 중복해서 저장할 수 없고, 하나의 null만 저장할 수 있습니다.
Set 컬렉션에는 HashSet, LinkedHashSet, TreeSet 등이 있습니다.
인덱스로 관리하지 않기 때문에 인덱스를 파라미터로 갖는 메소드가 없습니다.
따라서 iterator를 사용해야 합니다.
# HashSet
* 가장 빠른 임의 접근 속도
* 순서를 전혀 예측할 수 없음
# LinkedHashSet
* 추가된 순서, 또는 가장 최근에 접근한 순서대로 접근 가능
# TreeSet
* 정렬된 순서대로 보관하며 정렬 방법을 지정할 수 있음
# ExHashSet.java
public class ExHashSet { public static void main(String[] args) { Set<String> set = new HashSet<String>();
set.add("Java"); set.add("JDBC"); set.add("JTBC"); set.add("Java"); set.add("iBATIS");
int size = set.size(); System.out.println("총 객체 수: " + size);
Iterator<String> iterator = set.iterator();
while (iterator.hasNext()) { String elem = iterator.next();
System.out.println("\t" + elem); }
set.remove("JDBC"); set.remove("JTBC");
System.out.println("총 객체 수: " + set.size());
iterator = set.iterator();
while (iterator.hasNext()) { String elem = iterator.next();
System.out.println("\t" + elem); }
set.clear();
if (set.isEmpty()) System.out.println("HashSet 비어있음"); } } |
# 결과
총 객체 수: 4 Java JDBC JTBC iBATIS 총 객체 수: 2 Java iBATIS HashSet 비어있음 |
※ 참고 사이트 ※
★http://palpit.tistory.com/655
'Java > Java' 카테고리의 다른 글
GSON – How to parse input JSON with dynamic keys (0) | 2018.05.28 |
---|---|
Map Collection이란? (0) | 2018.05.23 |
List Collection이란? (0) | 2018.05.23 |
컬렉션 프레임워크(Collection Framework)란? (0) | 2018.05.23 |
향상된 for문 사용하기 (0) | 2018.05.20 |