•
HashSet 컬렉션 객체 생성, Set은 순서 고려 X
package com.collection.set;
import java.util.HashSet;
import java.util.Set;
public class SetExample {
public static void main(String[] args) {
// HashSet 컬렉션 객체 생성
Set<String> set = new HashSet<>();
// 컬렉션 객체에 데이터 저장 - 순서 X
set.add("Java");
set.add("JDBC");
set.add("JSP");
set.add("JPA");
set.add("Servlet");
set.add("MyBatis");
set.add("Java");
System.out.println("저장된 요소의 개수 : " + set.size());
System.out.println(set);
}
}
Java
복사
•
hashSet.size() + 중복 안 되는 내용 확인
package com.collection.set;
import com.collection.list.Member;
import java.util.HashSet;
public class SetExample2 {
public static void main(String[] args) {
// HashSet 컬렉션 객체 생성
HashSet<Member> hashSet = new HashSet<>();
// 동일한 데이터 입력
hashSet.add(new Member("minsung", 26));
hashSet.add(new Member("minsung", 26));
// 저장된 객체 수를 출력
System.out.println("저장된 객체 수 : " + hashSet.size());
}
}
Java
복사
•
Iterator
package com.collection.set;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
public class SetExample3 {
public static void main(String[] args) {
Set<String> cookies = new HashSet<>();
cookies.add("맛동산");
cookies.add("새우깡");
cookies.add("허니버터칩");
cookies.add("꼬북칩");
cookies.add("초코하임");
// for (String cookie : cookies) {
// System.out.println(cookie);
// }
// Iterator = 반복해주는 기계 => foreach와 결과 동일
Iterator<String> iterator = cookies.iterator();
while (iterator.hasNext()) {
String cookie = iterator.next();
System.out.println(cookie);
}
}
}
Java
복사
•
TreeSet
package com.collection.set;
import java.util.NavigableSet;
import java.util.SortedSet;
import java.util.TreeSet;
public class TreeSetExample {
public static void main(String[] args) {
// TreeSet 컬렉션 생성 [int] 변수명 scores
TreeSet<Integer> scores = new TreeSet<>();
// 객체에 데이터를 저장 (87, 98, 75, 95, 80)
scores.add(87);
scores.add(98);
scores.add(75);
scores.add(95);
scores.add(80);
// 오름차순으로 정렬이 다 된다~~
System.out.println(scores);
// 내림차순으로 정렬이 된다.
NavigableSet<Integer> descSet = scores.descendingSet();
System.out.println(descSet);
// 범위 검색 (80점 이상인 친구들 모여라~~~모여라~~~)
NavigableSet<Integer> up80Set = scores.tailSet(80, true);
System.out.println(up80Set);
// 범위 검색 (80점 이상 80점 미만 모여라~~~모여라~~~)
SortedSet<Integer> up80down90 = scores.subSet(80, true, 90, true);
System.out.println(up80down90);
System.out.println("=========================================");
// 특정 요소 가져오기
System.out.println("가장 낮은 점수 : " + scores.first()); // 75
System.out.println("가장 높은 점수 : " + scores.last()); // 98
System.out.println("95점 아래 점수 : " + scores.lower(95)); // 87
System.out.println("95점 위 점수 : " + scores.higher(95)); // 98
System.out.println("96점이거나 바로 아래 점수 : " + scores.floor(96)); // 95
System.out.println("96점이거나 바로 아래 점수 : " + scores.ceiling(96)); // 98
System.out.println();
}
}
Java
복사