Java Set Interface

In questo tutorial, impareremo a conoscere l'interfaccia Set in Java e i suoi metodi.

L' Setinterfaccia del Collectionsframework Java fornisce le funzionalità del set matematico in Java. Estende l' Collectioninterfaccia.

A differenza Listdell'interfaccia, i set non possono contenere elementi duplicati.

Classi che implementano Set

Poiché Setè un'interfaccia, non possiamo creare oggetti da essa.

Per utilizzare le funzionalità Setdell'interfaccia, possiamo utilizzare queste classi:

  • HashSet
  • LinkedHashSet
  • EnumSet
  • TreeSet

Queste classi sono definite nel Collectionsframework e implementano l' Setinterfaccia.

Interfacce che estendono Set

L' Setinterfaccia è estesa anche da queste sottointerfacce:

  • SortedSet
  • NavigableSet

Come si usa Set?

In Java, dobbiamo importare il java.util.Setpacchetto per poter utilizzare Set.

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

Qui abbiamo creato un Setanimale chiamato. Abbiamo utilizzato la HashSetclasse per implementare l' Setinterfaccia.

Metodi di Set

L' Setinterfaccia include tutti i metodi Collectiondell'interfaccia. È perché Collectionè una super interfaccia di Set.

Alcuni dei metodi comunemente usati Collectiondell'interfaccia che è anche disponibile Setnell'interfaccia sono:

  • add () : aggiunge l'elemento specificato al set
  • addAll () : aggiunge tutti gli elementi della raccolta specificata al set
  • iterator () - restituisce un iteratore che può essere utilizzato per accedere sequenzialmente agli elementi dell'insieme
  • remove () - rimuove l'elemento specificato dal set
  • removeAll () - rimuove tutti gli elementi dal set che è presente in un altro set specificato
  • keepAll () - mantiene tutti gli elementi nel set che sono presenti anche in un altro set specificato
  • clear () : rimuove tutti gli elementi dal set
  • size () - restituisce la lunghezza (numero di elementi) del set
  • toArray () - restituisce un array contenente tutti gli elementi del set
  • contiene () - restituisce truese il set contiene l'elemento specificato
  • contieneAll () : restituisce truese il set contiene tutti gli elementi della raccolta specificata
  • hashCode () - restituisce un valore di codice hash (indirizzo dell'elemento nel set)

Per ulteriori informazioni su altri metodi Setdell'interfaccia, visitare Java Set (documentazione Java ufficiale).

Imposta operazioni

L' Setinterfaccia Java ci consente di eseguire operazioni matematiche di base sugli insiemi come unione, intersezione e sottoinsieme.

  • Unione : per ottenere l'unione di due insiemi x e y, possiamo usarex.addAll(y)
  • Intersezione : per ottenere l'intersezione di due insiemi x e y, possiamo usarex.retainAll(y)
  • Sottoinsieme : per verificare se x è un sottoinsieme di y, possiamo usarey.containsAll(x)

Implementazione dell'interfaccia Set

1. Implementazione della classe 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); ) ) 

Produzione

 Set1: (2, 3) Set2: (1, 2) L'unione è: (1, 2, 3) 

Per saperne di più HashSet, visita Java HashSet.

2. Implementazione della classe 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(", "); ) ) ) 

Produzione

 Set using TreeSet: (1, 2, 3) Accessing elements using iterator (): 1, 2, 3, 

Per saperne di più TreeSet, visita Java TreeSet.

Ora che sappiamo che cosa Setè, vedremo le sue implementazioni nelle classi come EnumSet, HashSet, LinkedHashSete TreeSetnei prossimi tutorial.

Articoli interessanti...