W tym przykładzie nauczymy się obliczać przecięcie dwóch zbiorów w Javie.
Aby zrozumieć ten przykład, należy znać następujące tematy dotyczące programowania w języku Java:
- Interfejs zestawu Java
- Klasa Java HashSet
Przykład 1: Oblicz przecięcie dwóch zestawów
import java.util.HashSet; import java.util.Set; class Main ( public static void main(String() args) ( // create first set Set primeNumbers = new HashSet(); primeNumbers.add(2); primeNumbers.add(3); System.out.println("Prime Numbers: " + primeNumbers); // create second set Set evenNumbers = new HashSet(); evenNumbers.add(2); evenNumbers.add(4); System.out.println("Even Numbers: " + evenNumbers); // Intersection of two sets evenNumbers.retainAll(primeNumbers); System.out.println("Intersection: " + evenNumbers); ) )
Wynik
Liczby pierwsze: (2, 3) Liczby parzyste: (2, 4) Przecięcie: (2)
W powyższym przykładzie utworzyliśmy dwa zestawy o nazwach primeNumbers i evenNumbers. Zaimplementowaliśmy zestaw przy użyciu HashSet
klasy. Zwróć uwagę na linię,
evenNumbers.retainAll(primeNumbers);
Tutaj użyliśmy retainAll()
metody, aby uzyskać przecięcie dwóch zbiorów.
Przykład 2: Zbierz połączenie dwóch zestawów za pomocą biblioteki Guava
import java.util.HashSet; import java.util.Set; import com.google.common.collect.Sets; class Main ( public static void main(String() args) ( // create the first set Set backend = new HashSet(); backend.add("Java"); backend.add("JavaScript"); System.out.println("Backend Languages: " + backend); // create second set Set frontend = new HashSet(); frontend.add("JavaScript"); frontend.add("CSS"); System.out.println("Frontend Languages: " + frontend); Set intersect = Sets.intersection(backend, frontend); System.out.println("Common Languages: " + intersect); ) )
Wynik
Języki zaplecza: (Java, JavaScript) Języki frontendu: (JavaScript, CSS) Popularne języki: (JavaScript)
W powyższym przykładzie użyliśmy biblioteki Guava, aby uzyskać przecięcie dwóch zestawów. Aby uruchomić ten program, musisz zaimplementować bibliotekę Guava, dodając ją do swojej zależności.
Tutaj użyliśmy intersection()
metody klasy Sets z biblioteki Guava.