Interfață Java Set

În acest tutorial, vom afla despre interfața Set în Java și metodele sale.

SetInterfața Java Collectionscadru oferă caracteristicile setului matematic în Java. Extinde Collectioninterfața.

Spre deosebire de Listinterfață, seturile nu pot conține elemente duplicate.

Clasele care implementează Set

Deoarece Seteste o interfață, nu putem crea obiecte din ea.

Pentru a utiliza funcționalitățile Setinterfeței, putem folosi aceste clase:

  • HashSet
  • LinkedHashSet
  • EnumSet
  • TreeSet

Aceste clase sunt definite în Collectionscadrul și implementează Setinterfața.

Interfețe care extind Set

SetInterfața este extinsă de aceste subinterfaces:

  • SortedSet
  • NavigableSet

Cum se folosește Set?

În Java, trebuie să importăm java.util.Setpachetul pentru a-l utiliza Set.

 // Set implementation using HashSet Set animals = new HashSet(); 

Aici, am creat Setanimale numite. Am folosit HashSetclasa pentru a implementa Setinterfața.

Metode de setare

SetInterfața include toate metodele Collectioninterfeței. Este pentru că Collectioneste o super interfață de Set.

Unele dintre metodele utilizate în mod obișnuit ale Collectioninterfeței, disponibile și în Setinterfață, sunt:

  • add () - adaugă elementul specificat setului
  • addAll () - adaugă la set toate elementele colecției specificate
  • iterator () - returnează un iterator care poate fi utilizat pentru a accesa secvențial elementele setului
  • remove () - elimină din set elementul specificat
  • removeAll () - elimină toate elementele din setul care este prezent într-un alt set specificat
  • retainAll () - reține toate elementele din set care sunt prezente și într-un alt set specificat
  • clear () - elimină toate elementele din set
  • size () - returnează lungimea (numărul de elemente) setului
  • toArray () - returnează o matrice care conține toate elementele setului
  • contains () - revine truedacă setul conține elementul specificat
  • containsAll () - revine truedacă setul conține toate elementele colecției specificate
  • hashCode () - returnează o valoare a codului hash (adresa elementului din set)

Pentru a afla mai multe metode ale Setinterfeței, vizitați Java Set (documentație oficială Java).

Operații de setare

SetInterfața Java ne permite să efectuăm operații de bază ale setului matematic, cum ar fi unirea, intersecția și subsetul.

  • Uniune - pentru a obține unirea a două seturi x și y, putem folosix.addAll(y)
  • Intersecție - pentru a obține intersecția a două seturi x și y, putem folosix.retainAll(y)
  • Subset - pentru a verifica dacă x este un subset al lui y, putem folosiy.containsAll(x)

Implementarea setului de interfață

1. Implementarea clasei HashSet

 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); ) ) 

Ieșire

 Set1: (2, 3) Set2: (1, 2) Uniunea este: (1, 2, 3) 

Pentru a afla mai multe despre HashSet, vizitați Java HashSet.

2. Implementarea clasei TreeSet

 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(", "); ) ) ) 

Ieșire

 Setați utilizând TreeSet: (1, 2, 3) Accesarea elementelor folosind iteratorul (): 1, 2, 3, 

Pentru a afla mai multe despre acestea TreeSet, vizitați Java TreeSet.

Acum , că știm ce Seteste, vom vedea implementările sale în clase cum ar fi EnumSet, HashSet, LinkedHashSetși TreeSetîn următoarele tutoriale.

Articole interesante...