Ebben az oktatóanyagban megismerhetjük a Java felület Set felületét és annak módszereit.
A SetJava Collectionskeretrendszer kezelőfelülete biztosítja a Java matematikai készletének jellemzőit. Kiterjeszti az Collectioninterfészt.
Az Listinterfésztől eltérően a készletek nem tartalmazhatnak ismétlődő elemeket.
A Setet megvalósító osztályok
Mivel Setez egy felület, nem hozhatunk létre belőle objektumokat.
Az Setinterfész funkcióinak használatához ezeket az osztályokat használhatjuk:
- HashSet
- LinkedHashSet
- EnumSet
- TreeSet
Ezeket az osztályokat a Collectionskeretrendszer határozza meg, és megvalósítják az Setinterfészt.

A Setet kiterjesztő interfészek
Az Setinterfészt ezek az alinterfészek is kibővítik:
- SortedSet
- NavigableSet

Hogyan kell használni a Set alkalmazást?
A Java- java.util.Setban a használathoz csomagot kell importálnunk Set.
// Set implementation using HashSet Set animals = new HashSet();
Itt létrehoztunk egy Setúgynevezett állatot. Az HashSetosztályt használtuk az Setinterfész megvalósításához .
A halmaz módszerei
Az Setinterfész az interfész összes módszerét tartalmazza Collection. Ez azért Collectionvan, mert a Set.
Néhány, a Collectionfelületen is elérhető felület általánosan használt módszer Set:
- add () - hozzáadja a megadott elemet a halmazhoz
- addAll () - hozzáadja a megadott gyűjtemény összes elemét a készlethez
- iterator () - olyan iterátort ad vissza, amely felhasználható a halmaz elemeinek egymás utáni elérésére
- remove () - eltávolítja a megadott elemet a készletből
- removeAll () - eltávolítja az összes elemet a készletből, amely egy másik megadott halmazban található
- retainAll () - megtartja a halmaz összes elemét, amely egy másik meghatározott halmazban is jelen van
- clear () - eltávolítja az összes elemet a halmazból
- size () - a halmaz hosszát (elemek számát ) adja vissza
- toArray () - a halmaz összes elemét tartalmazó tömböt ad vissza
- tartalmaz () - visszatér,
trueha a halmaz tartalmazza a megadott elemet - tartalmazzaAll () - visszatér,
trueha a halmaz a megadott gyűjtemény összes elemét tartalmazza - hashCode () - hash kódértéket ad vissza (a halmaz elemének címe)
A Setfelület további módszereiről a Java Set (hivatalos Java dokumentáció) webhelyen tájékozódhat.
Műveletek beállítása
A Java Setfelület lehetővé teszi számunkra az alapvető matematikai halmazműveletek végrehajtását, mint az egyesülés, metszéspont és részhalmaz.
- Unió - két x és y halmaz uniójának megszerzéséhez használhatjuk
x.addAll(y) - Metszéspont - két x és y halmaz metszetének megszerzéséhez használhatjuk
x.retainAll(y) - Részhalmaz - annak ellenőrzésére, hogy x-e y részhalmaza, használhatjuk-e
y.containsAll(x)
A set interfész megvalósítása
1. A HashSet osztály megvalósítása
import java.util.Set; import java.util.HashSet; class Main ( public static void main(String() args) ( // Creating a set using the HashSet class Set set1 = new HashSet(); // Add elements to the set1 set1.add(2); set1.add(3); System.out.println("Set1: " + set1); // Creating another set using the HashSet class Set set2 = new HashSet(); // Add elements set2.add(1); set2.add(2); System.out.println("Set2: " + set2); // Union of two sets set2.addAll(set1); System.out.println("Union is: " + set2); ) )
Kimenet
Set1: (2, 3) Set2: (1, 2) Union: (1, 2, 3)
További információkért HashSetlátogasson el a Java HashSet oldalra.
2. A TreeSet osztály megvalósítása
import java.util.Set; import java.util.TreeSet; import java.util.Iterator; class Main ( public static void main(String() args) ( // Creating a set using the TreeSet class Set numbers = new TreeSet(); // Add elements to the set numbers.add(2); numbers.add(3); numbers.add(1); System.out.println("Set using TreeSet: " + numbers); // Access Elements using iterator() System.out.print("Accessing elements using iterator(): "); Iterator iterate = numbers.iterator(); while(iterate.hasNext()) ( System.out.print(iterate.next()); System.out.print(", "); ) ) )
Kimenet
Beállítás a TreeSet használatával: (1, 2, 3) Elemekhez való hozzáférés iterátor segítségével (): 1, 2, 3
További információért TreeSetlátogasson el a Java TreeSet oldalra.
Most, hogy tudjuk, mi Setvan, látni fogjuk, a megvalósítások osztályok, mint a EnumSet, HashSet, LinkedHashSetés TreeSeta következő konzultáció.








