Ebben a példában megtanuljuk kiszámítani a Java két halmaza közötti különbséget.
A példa megértéséhez ismernie kell a következő Java programozási témákat:
- Java Set Interface
- Java HashSet osztály
1. példa: Számítsa ki a különbséget két halmaz között
import java.util.HashSet; import java.util.Set; class Main ( public static void main(String() args) ( // create first set Set numbers = new HashSet(); numbers.add(1); numbers.add(2); numbers.add(3); numbers.add(4); System.out.println("Numbers: " + numbers); // create second set Set primeNumbers = new HashSet(); primeNumbers.add(2); primeNumbers.add(3); System.out.println("Prime Numbers: " + primeNumbers); // Difference between HashSet1 and HashSet2 numbers.removeAll(primeNumbers); System.out.println("Numbers without prime numbers: " + numbers); ) )
Kimenet
Számok: (1, 2, 3, 4) Prímszámok: (2, 3) Számok prímszámok nélkül: (1, 4)
A fenti példában két olyan halmazt hoztunk létre, amelyek neve számok és prímszámok. Az HashSet
osztály használatával valósítottuk meg a készletet . Figyelje meg a sort,
numbers.retainAll(primeNumbers);
Itt a removeAll()
módszert használtuk két halmaz közötti különbség kiszámításához.
2. példa: Szerezzen különbséget két készlet között a Guava Library használatával
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 languages1 = new HashSet(); languages1.add("Java"); languages1.add("JavaScript"); languages1.add("English"); languages1.add("Spanish"); System.out.println("Languages: " + languages1); // create second set Set languages2 = new HashSet(); languages2.add("English"); languages2.add("Spanish"); System.out.println("Human Languages: " + languages2); Set intersect = Sets.difference(languages1, languages2); System.out.println("Programming Languages: " + intersect); ) )
Kimenet
Nyelvek: (Java, JavaScript, angol, spanyol) Emberi nyelvek: (angol, spanyol) Programozási nyelvek: (Java, JavaScript)
A fenti példában a guava könyvtárat használtuk a két halmaz közötti különbség megszerzésére. A program futtatásához telepítenie kell a Guava Library-t, hozzáadva azt a függőségéhez.
Itt difference()
a Guava könyvtárban található Sets osztály módszerét használtuk .