package com.sukgi.coll;
//List : 순서 있지요?
import java.util.ArrayList;
//Set : 순서가 없어요.
//Map
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
public class Set01 {
public static void main(String[] args) {
Set<String> set = new HashSet<String>();
set.add("홍길동");
set.add("김길동");
set.add("이길동");
set.add("박길동");
set.add("최길동");
set.add("홍길동");
System.out.println(set);// 중복 출력되지 않아요
System.out.println(set.size());
// get, 정렬 없어요
System.out.println("===============================");
// 로또?
Set<Integer> num = new HashSet<Integer>();
while (num.size() < 6) {
int i = (int) (Math.random() * 45 + 1);
num.add(i);
}
System.out.println(num);// [3, 35, 4, 9, 28, 30]
System.out.println("===============================");
// set을 list로 만들어서 출력하기
List<Integer> list2 = new ArrayList<>(num);
System.out.println(list2);
for (int i = 0; i < list2.size(); i++) {
System.out.println(list2.get(i));
}
System.out.println("===============================");
// foreach 출력하기
for (Integer integer : list2) {
System.out.println(integer);
}
System.out.println("===============================");
// Iterator
Iterator<Integer> iter = num.iterator();
while (iter.hasNext()) {
Integer integer = (Integer) iter.next();
System.out.println(integer);
}
/*
* 반복자
* 컬렉션 인터페이스의 interator()메소드는 Iterator를 리턴합니다.
* Iterator는 Enumeration인터페이스와 비슷하나 Enumeration보다
* 나중에 만들어졌습니다.
*
* */
System.out.println("===============================");
List<String> names = new ArrayList<String>();
names.add("홍길동");
names.add("김길동");
names.add("최길동");
names.add("홍길동");
names.add("홍길동");
names.add("홍길동");
names.add("이길동");
names.add("홍길동");
names.add("홍길동");
System.out.println(names.size()); //홍길동 중복 포함 9명
System.out.println("===============================");
Set<String> names2 = new HashSet<String>(names);
System.out.println(names2.size());//홍길동 중복 제거 후 9개에서 4개 남음
System.out.println(names2);//홍길동 중복 제거 후 9개에서 4개 남음
}
}
- HashSet 복사 및 중복 제거:
- Set<String> names2 = new HashSet<>(names);를 사용하여 기존 names의 값을 가진 새로운 HashSet을 만듭니다.
- 이로써 중복된 값이 제거됩니다.
'2023.11.21-2024.05.31' 카테고리의 다른 글
231221 JAVA Map01(컬렉션 - map) (1) | 2023.12.21 |
---|---|
231221 JAVA Set02(컬렉션 - set) (0) | 2023.12.21 |
231221 JAVA List03(컬렉션 - list) (0) | 2023.12.21 |
231221 JAVA List02(컬렉션 - list) (0) | 2023.12.21 |
231221 JAVA List01(컬렉션 - list) (0) | 2023.12.21 |