El conjunt és una interfície disponible a java.util paquet. El conjunt interfície amplia la interfície de col·lecció. Una col·lecció o llista no ordenada en què no es permeten duplicats s'anomena a interfície de col·lecció . La interfície del conjunt s'utilitza per crear el conjunt matemàtic. La interfície conjunta utilitza els mètodes de la interfície de col·lecció per evitar la inserció dels mateixos elements. Conjunt ordenat i Conjunt navegable són dues interfícies que amplien la implementació del conjunt.
En el diagrama anterior, el Conjunt navegable i Conjunt ordenat són les dues interfícies. El Conjunt navegable amplia el SortedSet, de manera que no conservarà l'ordre d'inserció i emmagatzemarà les dades de manera ordenada.
SetExample1.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); } }
Sortida:
Nota: Al llarg de la secció, hem compilat el programa amb el nom del fitxer i hem executat el programa amb el nom de la classe. Perquè el nom del fitxer i el nom de la classe són diferents.
Operacions a la interfície Set
Al conjunt, podem realitzar totes les operacions matemàtiques bàsiques com la intersecció, la unió i la diferència.
string jsonobject
Suposem que tenim dos conjunts, és a dir, conjunt1 = [22, 45, 33, 66, 55, 34, 77] i conjunt2 = [33, 2, 83, 45, 3, 12, 55]. Podem realitzar la següent operació al conjunt:
En conjunt, afegirAll() s'utilitza el mètode per realitzar la unió, retainAll() s'utilitza el mètode per realitzar la intersecció i esborra-ho tot() S'utilitza el mètode per realitzar la diferència. Prenguem un exemple per entendre com s'utilitzen aquests mètodes per realitzar les operacions d'intersecció, unió i diferència.
SetExample2.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); } }
Sortida:
Descripció:
En el codi anterior, primer, creem dues matrius, és a dir, A i B de tipus enter. Després d'això, creem dos conjunts, és a dir, set1 i set2 de tipus enter. Convertim tant la matriu en una llista i afegim els elements de la matriu A al conjunt1 i els elements de la matriu B al conjunt2.
Per realitzar la unió, creem un nou conjunt dades_unió amb el mateix element del conjunt1. Aleshores cridem al mètode addAll() de set i li passem el set2 com a argument. Aquest mètode afegirà tots aquests elements al dades_unió que no hi són presents i dóna la unió d'ambdós conjunts.
Per realitzar la intersecció, creem un nou conjunt dades_intersecció amb el mateix element del conjunt1. Aleshores cridem al mètode retainAll() de set i li passem el set2 com a argument. Aquest mètode obtindrà tots aquests elements del dades_intersecció que estan presents a set2 i l'emmagatzemen a intersection_data. Ara, intersection_data conté el valor d'intersecció dels dos conjunts.
Per fer la diferència, creem un nou conjunt dades_diferències amb el mateix element del conjunt1. Aleshores cridem al mètode removeAll() de set i li passem el set2 com a argument. Aquest mètode eliminarà tots aquests elements del fitxer dades_diferències que estan presents al conjunt2 i dóna la diferència dels dos conjunts.
Establir mètodes
Hi ha diversos mètodes disponibles a la interfície del conjunt que podem utilitzar per realitzar una determinada operació als nostres conjunts. Aquests mètodes són els següents:
1) afegir()
El mètode add() insereix un valor nou al conjunt. El mètode retorna true i false en funció de la presència de l'element d'inserció. Retorna fals si l'element ja està present al conjunt i retorna true si no està present al conjunt.
Sintaxi:
boolean add(type element).
SetExample3.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); } }
Sortida:
2) addAll()
El mètode addAll() afegeix tots els elements de la col·lecció especificada al conjunt.
Sintaxi:
boolean addAll(Collection data)
SetExample4.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); } }
Sortida:
afegint cadenes java
3) esborrar ()
El mètode elimina tots els elements del conjunt. No elimina la referència del conjunt. Només elimina els elements del conjunt.
Sintaxi:
void clear()
SetExample5.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); } }
Sortida:
4) conté ()
El mètode contains() s'utilitza per conèixer la presència d'un element al conjunt. El seu valor de retorn és cert o fals segons la presència de l'element.
Sintaxi:
boolean contains(Object element)
SetExample6.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)); } }
Sortida:
5) conté Tot()
El mètode s'utilitza per comprovar si tots els elements de la col·lecció estan disponibles al conjunt existent o no. Retorna true si tots els elements de la col·lecció estan presents al conjunt i retorna false encara que falti un dels elements al conjunt existent.
Sintaxi:
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)); } }
Sortida:
6) hashCode()
El mètode s'utilitza per obtenir el valor del codi hash per a la instància actual del conjunt. Retorna un valor de codi hash de tipus enter.
Sintaxi:
public int hashCode()
SetExample8.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()); } }
Sortida:
7) és buit()
El mètode isEmpty() s'utilitza per identificar el buit del conjunt. Retorna true si el conjunt està buit i retorna false si el conjunt no està buit.
Sintaxi:
boolean isEmpty()
SetExample9.java
en Java regex
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()); } }
Sortida:
8) iterador()
El mètode iterator() s'utilitza per trobar l'iterador del conjunt. L'iterador s'utilitza per obtenir l'element un per un.
Sintaxi:
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()); } } }
Sortida:
9) elimina ()
El mètode s'utilitza per eliminar un element especificat del conjunt. El seu valor de retorn depèn de la disponibilitat de l'element. Retorna true si l'element està disponible al conjunt i retorna false si no està disponible al conjunt.
Sintaxi:
boolean remove(Object O)
SetExample11.java
inicialització de la llista python
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); } }
Sortida:
11) removeAll()
El mètode elimina tots els elements del conjunt existent de la col·lecció especificada.
Sintaxi:
public boolean removeAll(Collection data)
SetExample12.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); } }
Sortida:
11) retainAll()
El mètode conserva tots els elements del conjunt especificat a la col·lecció donada.
Sintaxi:
public boolean retainAll(Collection data)
SetExample13.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); } }
Sortida:
12) mida ()
El mètode retorna la mida del conjunt.
Sintaxi:
int size()
SetExample14.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()); } }
Sortida:
13) removeAll()
El mètode s'utilitza per crear una matriu amb els mateixos elements del conjunt.
Sintaxi:
Object[] toArray()
SetExample15.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;>