IL impostato è un'interfaccia disponibile in java.util pacchetto. IL impostato l'interfaccia estende l'interfaccia della raccolta. Una raccolta o un elenco non ordinato in cui non sono consentiti duplicati viene definito a interfaccia di raccolta . L'interfaccia del set viene utilizzata per creare il set matematico. L'interfaccia set utilizza i metodi dell'interfaccia collection per evitare l'inserimento degli stessi elementi. Insieme ordinato E Set navigabile sono due interfacce che estendono l'implementazione del set.
Nel diagramma sopra, il Set navigabile E Insieme ordinato sono entrambe le interfacce. IL Set navigabile estende SortedSet, quindi non manterrà l'ordine di inserimento e memorizzerà i dati in modo ordinato.
ImpostaEsempio1.java
import java.util.*; public class setExample{ public static void main(String[] args) { // creating LinkedHashSet using the Set Set data = new LinkedHashSet(); data.add('JavaTpoint'); data.add('Set'); data.add('Example'); data.add('Set'); System.out.println(data); } }
Produzione:
Nota: in tutta la sezione abbiamo compilato il programma con il nome del file ed eseguito il programma con il nome della classe. Perché il nome del file e il nome della classe sono diversi.
Operazioni sull'interfaccia Set
Sul Set possiamo eseguire tutte le operazioni matematiche di base come intersezione, unione e differenza.
Supponiamo di avere due insiemi, ovvero set1 = [22, 45, 33, 66, 55, 34, 77] e set2 = [33, 2, 83, 45, 3, 12, 55]. Possiamo eseguire la seguente operazione sul Set:
Nell'insieme, Aggiungi tutto() metodo viene utilizzato per eseguire l'unione, conservaTutto() viene utilizzato il metodo per eseguire l'intersezione e Rimuovi tutto() Il metodo viene utilizzato per eseguire la differenza. Facciamo un esempio per capire come vengono utilizzati questi metodi per eseguire le operazioni di intersezione, unione e differenza.
SetEsempio2.java
import java.util.*; public class SetOperations { public static void main(String args[]) { Integer[] A = {22, 45,33, 66, 55, 34, 77}; Integer[] B = {33, 2, 83, 45, 3, 12, 55}; Set set1 = new HashSet(); set1.addAll(Arrays.asList(A)); Set set2 = new HashSet(); set2.addAll(Arrays.asList(B)); // Finding Union of set1 and set2 Set union_data = new HashSet(set1); union_data.addAll(set2); System.out.print('Union of set1 and set2 is:'); System.out.println(union_data); // Finding Intersection of set1 and set2 Set intersection_data = new HashSet(set1); intersection_data.retainAll(set2); System.out.print('Intersection of set1 and set2 is:'); System.out.println(intersection_data); // Finding Difference of set1 and set2 Set difference_data = new HashSet(set1); difference_data.removeAll(set2); System.out.print('Difference of set1 and set2 is:'); System.out.println(difference_data); } }
Produzione:
Descrizione:
Nel codice precedente, innanzitutto creiamo due array, ovvero A e B di tipo intero. Successivamente creiamo due set, ovvero set1 e set2 di tipo intero. Convertiamo l'array in una lista e aggiungiamo gli elementi dell'array A nel set1 e gli elementi dell'array B nel set2.
Per eseguire l'unione, creiamo un nuovo set union_data con lo stesso elemento del set1. Quindi chiamiamo il metodo addAll() di set e gli passiamo set2 come argomento. Questo metodo aggiungerà tutti quegli elementi al file union_data che non sono presenti in esso e dà l'unione di entrambi gli insiemi.
Per eseguire l'intersezione, creiamo un nuovo set dati_intersezione con lo stesso elemento del set1. Quindi chiamiamo il metodo keepAll() di set e gli passiamo set2 come argomento. Questo metodo otterrà tutti quegli elementi dal file dati_intersezione che sono presenti in set2 e memorizzarlo in intersezione_data. Ora, Crossed_Data contiene il valore di intersezione di entrambi i set.
Per eseguire la differenza, creiamo un nuovo set differenza_dati con lo stesso elemento del set1. Quindi chiamiamo il metodo RemoveAll() di set e gli passiamo set2 come argomento. Questo metodo rimuoverà tutti quegli elementi dal file differenza_dati che sono presenti nel set2 e dà la differenza di entrambi i set.
Imposta metodi
Nell'interfaccia del set sono disponibili diversi metodi che possiamo utilizzare per eseguire una determinata operazione sui nostri set. Questi metodi sono i seguenti:
1) aggiungi()
Il metodo add() inserisce un nuovo valore nel set. Il metodo restituisce true e false a seconda della presenza dell'elemento di inserimento. Restituisce falso se l'elemento è già presente nell'insieme e restituisce vero se non è presente nell'insieme.
Sintassi:
boolean add(type element).
SetEsempio3.java
import java.io.*; import java.util.*; public class addMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(11); data.add(61); data.add(51); System.out.println('data: ' + data); } }
Produzione:
2) aggiungiTutto()
Il metodo addAll() aggiunge al set tutti gli elementi della raccolta specificata.
Sintassi:
boolean addAll(Collection data)
SetEsempio4.java
import java.io.*; import java.util.*; class addAllMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); System.out.println('Set: ' + data); ArrayList newData = new ArrayList(); newData.add(91); newData.add(71); newData.add(81); data.addAll(newData); System.out.println('Set: ' + data); } }
Produzione:
3) chiaro()
Il metodo rimuove tutti gli elementi dal set. Non cancella il riferimento dell'insieme. Cancella solo gli elementi del set.
Sintassi:
void clear()
SetEsempio5.java
import java.io.*; import java.util.*; public class clearMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); System.out.println('Set: ' + data); data.clear(); System.out.println('The final set: ' + data); } }
Produzione:
4) contiene()
Il metodo contiene() viene utilizzato per conoscere la presenza di un elemento nell'insieme. Il suo valore restituito è vero o falso a seconda della presenza dell'elemento.
Sintassi:
boolean contains(Object element)
SetEsempio6.java
import java.io.*; import java.util.*; class containsMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(51); data.add(11); data.add(81); System.out.println('Set: ' + data); System.out.println('Does the Set contains '91'?' + data.contains(91)); System.out.println('Does the Set contains 'javaTpoint'? ' + data.contains('4')); System.out.println('Does the Set contains '51'? ' + data.contains(51)); } }
Produzione:
5) contieneTutto()
Il metodo viene utilizzato per verificare se tutti gli elementi della collezione sono disponibili o meno nell'insieme esistente. Restituisce vero se tutti gli elementi della collezione sono presenti nell'insieme e restituisce falso anche se uno degli elementi manca nell'insieme esistente.
Sintassi:
public boolean containsAll(Collection data)
SetExample7.java
import java.io.*; import java.util.*; class containsAllMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(51); data.add(11); data.add(81); System.out.println('data: ' + data); Set newData = new LinkedHashSet(); newData.add(31); newData.add(21); newData.add(41); System.out.println(' Does data contains newData?: '+ data.containsAll(newData)); } }
Produzione:
6) codice hash()
Il metodo viene utilizzato per derivare il valore del codice hash per l'istanza corrente del set. Restituisce il valore del codice hash di tipo intero.
Sintassi:
public int hashCode()
SetEsempio8.java
import java.io.*; import java.util.*; class hashCodeMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(51); data.add(11); data.add(81); System.out.println('data: ' + data); System.out.println(' The hash code value of set is:'+ data.hashCode()); } }
Produzione:
7) èVuoto()
Il metodo isEmpty() viene utilizzato per identificare la vacuità del set. Restituisce vero se l'insieme è vuoto e restituisce falso se l'insieme non è vuoto.
Sintassi:
boolean isEmpty()
SetExample9.java
import java.io.*; import java.util.*; class isEmptyMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(51); data.add(11); data.add(81); System.out.println('data: ' + data); System.out.println(' Is data empty?: '+ data.isEmpty()); } }
Produzione:
8) iteratore()
Il metodo iterator() viene utilizzato per trovare l'iteratore del set. L'iteratore viene utilizzato per ottenere l'elemento uno per uno.
Sintassi:
Iterator iterate_value = set1.iterator();
SetExample10.java
import java.io.*; import java.util.*; class iteratorMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(51); data.add(11); data.add(81); System.out.println('data: ' + data); Iterator newData = data.iterator(); System.out.println('The NewData values are: '); while (newData.hasNext()) { System.out.println(newData.next()); } } }
Produzione:
9) rimuovi()
Il metodo viene utilizzato per rimuovere un elemento specificato dal Set. Il suo valore restituito dipende dalla disponibilità dell'elemento. Restituisce vero se l'elemento è disponibile nell'insieme e restituisce falso se non è disponibile nell'insieme.
Sintassi:
boolean remove(Object O)
SetExample11.java
import java.io.*; import java.util.*; class removeMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(51); data.add(11); data.add(81); System.out.println('data: ' + data); data.remove(81); data.remove(21); data.remove(11); System.out.println('data after removing elements: ' + data); } }
Produzione:
11) rimuovi tutto()
Il metodo rimuove tutti gli elementi del set esistente dalla raccolta specificata.
Sintassi:
public boolean removeAll(Collection data)
SetEsempio12.java
import java.io.*; import java.util.*; class removeAllMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(91); data.add(71); data.add(81); System.out.println('data: ' + data); ArrayList newData = new ArrayList(); newData.add(91); newData.add(71); newData.add(81); System.out.println('NewData: ' + newData); data.removeAll(newData); System.out.println('data after removing Newdata elements : ' + data); } }
Produzione:
11) conservaTutto()
Il metodo conserva tutti gli elementi dell'insieme specificato nella raccolta data.
Sintassi:
public boolean retainAll(Collection data)
SetEsempio13.java
import java.io.*; import java.util.*; class retainAllMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(91); data.add(71); data.add(81); System.out.println('data: ' + data); ArrayList newData = new ArrayList(); newData.add(91); newData.add(71); newData.add(81); System.out.println('newData: ' + newData); data.retainAll(newData); System.out.println('data after retaining newdata elements : ' + data); } }
Produzione:
12) taglia()
Il metodo restituisce la dimensione del set.
Sintassi:
int size()
SetEsempio14.java
import java.io.*; import java.util.*; class sizeMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(91); data.add(71); data.add(81); System.out.println('data: ' + data); System.out.println('size of the data is : ' + data.size()); } }
Produzione:
setinterval javascript
13) rimuovi tutto()
Il metodo viene utilizzato per creare un array con gli stessi elementi del set.
Sintassi:
Object[] toArray()
SetEsempio15.java
import java.io.*; import java.util.*; class toArrayMethod { public static void main(String args[]) { Set data = new LinkedHashSet(); data.add(31); data.add(21); data.add(41); data.add(91); data.add(71); data.add(81); System.out.println('data: ' + data); Object[] array_data = data.toArray(); System.out.println('The array is:'); for (int i = 0; i <array_data.length; i++) system.out.println(array_data[i]); } < pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/java-tutorial/81/set-java-16.webp" alt="Set in Java"> <hr></array_data.length;>