집합 : set
집합 자료형 특징 : 순서가 없다 그리고 중복을 허용하지 않는다
HashSet
import java.util.Arrays;
import java.util.HashSet; // HashSet 집합을 사용하기 위한 import
집합을 HashSet를 사용하기 위해서는 HashSet import문을 작성해야 된다
// 집합 Hashset
HashSet<String> set = new HashSet<>();
set.add("Jump");
set.addAll(Arrays.asList("Java","to")); // addAll(Arrays.asList 값을 한꺼번에 여러 개 추가할 때)
set.remove("to"); // 특정 값을 제거할 때 사용이 된다.
System.out.println(set);
set 각종 메서드 :
add : 집합형 자료형에 add 메서드를 통해서 값을 추가할 때 사용한다.
addAll : 값을 한꺼번에 여러 개 추가할 때 사용한다.
remove : 특정 값을 제거할 때 사용한다 remove("to") 가 삭제가 되고 출력이 된다
교집합 구하기 : retainAll
HashSet<Integer> s1 = new HashSet<>(Arrays.asList(1,2,3,4,5,6));
HashSet<Integer> s2 = new HashSet<>(Arrays.asList(4,5,6,7,8,9));
HashSet<Integer> intersection = new HashSet<>(s1);
intersection.retainAll(s2);
System.out.println(intersection);
HashSet을 만든 intersction 객체를 s1으로 넣고 인스턴화 했다
intersction.retainAll(s2);을 통해서 교집합을 구할 수 있다
합집합 : addAll
HashSet<Integer> s1 = new HashSet<>(Arrays.asList(1,2,3,4,5,6));
HashSet<Integer> s2 = new HashSet<>(Arrays.asList(4,5,6,7,8,9));
HashSet<Integer> union = new HashSet<>(s1);
union.addAll(s2);
System.out.println(union);
addAll을 통해서 합집합을 구할 수 있다
차집합 : removeAll
substract.removeAll(s2);
removeAll을 통해서 차집합을 구할 수 있다.
상수집합 : enum
enum CoffeeType { // enum은 main 밖에서 클래스 안에서 생성이 되어야한다.
AMERICANO,
ICE_AMERICANO,
CAFE_LATTE
};
// 상수 집합 enum
System.out.println(CoffeeType.AMERICANO);
System.out.println(CoffeeType.ICE_AMERICANO);
System.out.println(CoffeeType.CAFE_LATTE);
for (CoffeeType type : CoffeeType.values()){
System.out.println(type); // for : CoffeType.valuse(객체) 배열을 리턴한다
// enum 장점 : 매직 넘버를 사용할 떄보다 코드가 명확하다.
// 잘못된 값을 사용해 생길 수 있는 오류를 막을 수 있다.
형변환 :
// 문자열을 정수로 변환
String num = "123";
int n = Integer.parseInt(num);
System.out.println(n);
String 자료형을 int형으로 출력하기
Integer 클래스 : Integer 클래스를 사용해서 parseInt 메서드를 통해서
String - > int형 자료로 출력이 가능하다
정수를 문자열로 출력하기
// 정수를 문자열로
int n1 = 123;
int n2 = 123;
String num1 = String.valueOf(n1);
String num2 = Integer.toString(n2);
System.out.println(n1);
System.out.println(n2);
정수를 문자열로 출력하는데 두 가지 방법이 있다
첫 번째
String.valueOf
두 번째
Integer.toString()
byte - > int -> long -> float -> double 자료형 순으로 올라갈 때 명시적 형변환은 필요가 없다
자료형 크기가 작아지는 경우 :
double d2 = 123.456;
int n5 = (int) d2;
'Java' 카테고리의 다른 글
2024년 6월 11일 KH 교육 전 JAVA 예습 : 뤼튼 활용하기(생성자, 변수 이름, this) (0) | 2024.06.06 |
---|---|
2024년 6월 11일 KH 교육 전 Java 예습 : 용어 및 내용 정리 (0) | 2024.06.05 |
2024년 6월 11일 KH 교육 전 Java 예습하기 배열, 리스트, 맵 (0) | 2024.06.05 |
2024년 6월 11일 KH 교육 전 예습 : For(피라미드, 다이아몬드 구구단(가로,세로)) (0) | 2024.06.02 |
2024 6월 11일 KH 교육 전 예습 : SQL 각종 연산자들 (0) | 2024.06.02 |