set 살펴보기
Set<integer> integerSet = new HashSet<>();
integerSet.add(1);
integerSet.add(1);
integerSet.add(3);
integerSet.add(2);
integerSet.add(9);
integerSet.add(8);
System.out.println(integerSet);
[1, 2, 3, 8, 9]
순서 유지 안됨, 중복 안됨!
숫자가 아니라 문자라면?
Set<String> stringSet = new HashSet<>();
stringSet.add("LA");
stringSet.add("New York);
stringSet.add("LasVegas");
stringSet.add("San Francisco");
stringSet.add("Seoul);
System.out.println(stringSet);
[San Francisco, New York, LasVegas, LA, Seoul]
하나 지우기
Set<String> stringSet = new HashSet<>();
stringSet.add("LA");
stringSet.add("New York);
stringSet.add("LasVegas");
stringSet.add("San Francisco");
stringSet.add("Seoul);
System.out.println(stringSet);
stringSet.remove("Seoul");
//순서가 없어서 index를 줄 수 없다!
System.out.println(stringSet);
[San Francisco, New York, LasVegas, LA]
여러개 지울 때
Set<String> stringSet = new HashSet<>();
stringSet.add("LA");
stringSet.add("New York);
stringSet.add("LasVegas");
stringSet.add("San Francisco");
stringSet.add("Seoul);
System.out.println(stringSet);
List<String> target = new ArrayList<>();
target.add("New York");
target.add("LasVegas");
stringSet.removeAll(target);
//()안에는 Collection을 받도록 되어있는데, set이나 다른게 아니어도 collection type은 뭐든 올 수 있다.
//그래서 target도 List type 이지만 올 수 있는 것!
System.out.println(stringSet);
[San Francisco, LA]
어떤 element가 있는지 확인 할 때 .contains()
Set<String> stringSet = new HashSet<>();
stringSet.add("LA");
stringSet.add("New York);
stringSet.add("LasVegas");
stringSet.add("San Francisco");
stringSet.add("Seoul);
System.out.println(stringSet);
List<String> target = new ArrayList<>();
target.add("New York");
target.add("LasVegas");
stringSet.removeAll(target);
System.out.println(stringSet);
System.out.println("LA 포함되어 있나요? " + stringSet.contains("LA"));
System.out.println("Seoul 포함되어 있나요? " + stringSet.contains("Seoul"));
LA 포함되어 있나요? true
Seoul 포함되어 있나요? false
.contains는 () 안에 넣어준 데이터가 이 자료구조에 있는지 확인해서 boolean으로 값을 리턴하는 함수다.
자료구조를 다 지우고 싶을 떄 .clear
Set<String> stringSet = new HashSet<>();
stringSet.add("LA");
stringSet.add("New York);
stringSet.add("LasVegas");
stringSet.add("San Francisco");
stringSet.add("Seoul);
System.out.println(stringSet);
List<String> target = new ArrayList<>();
target.add("New York");
target.add("LasVegas");
stringSet.removeAll(target);
System.out.println(stringSet);
System.out.println("LA 포함되어 있나요? " + stringSet.contains("LA"));
System.out.println("Seoul 포함되어 있나요? " + stringSet.contains("Seoul"));
stringSet.clear();
System.out.println(stringSet);
[ ]