순서와 상관없이 중복을 허용하지 않는 경우에는 Set 인터페이스를 구현한 클래스를 사용한다. 우리가 사용하는 데이터 중에 중복을 허용하지 않는 데이터는 어떤 것들이 있는가? 회원 아이디, 주문등록번호, 사번, 홈쇼핑 주문 번호 등은 중복되면 안된다. Set 인터페이스를 구현한 대표 클래스에는 HashSet과 TreeSet이 있다. 그중에서 오늘은 HashSet에 대해 살펴보겠다.
HashSet 클래스는 집합 자료 구조를 구현하며 중복을 허용하지 않는다.
package collection.hashset;
import java.util.HashSet;
public class HashSetTest {
public static void main(String[] args) {
HashSet<String> hashSet = new HashSet<String>();
hashSet.add(new String("빨간색"));
hashSet.add(new String("주황색"));
hashSet.add(new String("노란색"));
hashSet.add(new String("노란색"));
hashSet.add(new String("초록색"));
System.out.println(hashSet);
}
}
[노란색, 주황색, 초록색, 빨간색]
결과를 확인해보면 같은 자료(노란색)은 중복되어 출력되지 않았다.