English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
이 예제에서 Java에서 두 집합 사이의 차집합을 계산하는 방법을 배웁니다.
이 예제를 이해하기 위해 다음을 이해해야 합니다Java 프로그래밍주제:
import java.util.HashSet; import java.util.Set; class Main { public static void main(String[] args) { //첫 번째 집합을 생성합니다 Set<Integer> numbers = new HashSet<>(); 1); 2); 3); 4); System.out.println("숫자: ", + numbers); //두 번째 집합을 생성합니다 Set<Integer> primeNumbers = new HashSet<>(); 2); 3); System.out.println("소수: ", + primeNumbers); //HashSet1HashSet2차집합 System.out.println("소수가 없는 수: ", + numbers); } }
출력 결과
숫자: [1, 2, 3, 4] 소수: [2, 3] 소수가 없는 수: [1, 4]
위 예제에서 numbers와 primeNumbers라는 두 개의 집합을 생성했습니다. HashSet 클래스를 사용하여 이 집합을 구현했습니다. 이 줄을 주목하세요,
numbers.retainAll(primeNumbers);
여기서 removeAll() 메서드를 사용하여 두 집합 사이의 차집합을 계산했습니다.
import java.util.HashSet; import java.util.Set; import com.google.common.collect.Sets; class Main { public static void main(String[] args) { //첫 번째 집합을 생성합니다 Set<String> languages1 = new HashSet<>(); languages1.add("Java"); languages1.add("JavaScript"); languages1.add("English"); languages1.add("Spanish"); System.out.println("언어: " + languages1); //두 번째 집합을 생성합니다 Set<String> languages2 = new HashSet<>(); languages2.add("English"); languages2.add("Spanish"); System.out.println("인간 언어: " + languages2); Set<String> intersect = Sets.difference(languages1, languages2); System.out.println("프로그래밍 언어: " + intersect); } }
출력 결과
언어: [Java, JavaScript, English, Spanish] 인간 언어: [English, Spanish] 프로그래밍 언어: [Java, JavaScript]
위의 예제에서 Guava 라이브러리를 사용하여 두 집합 간의 차집합을 가져왔습니다. 이 프로그램을 실행하려면 의존성에 Guava 라이브러리를 추가하여야 합니다.
여기서 Guava 라이브러리에 존재하는 Sets 클래스의 difference() 메서드를 사용했습니다.