logo

Java nyelven beállítva

A készlet egy interfész elérhető a java.util csomag. A készlet interfész kiterjeszti a Gyűjtemény felületet. Az olyan rendezetlen gyűjteményt vagy listát, amelyben nem engedélyezettek az ismétlődések, a gyűjtőfelület . A készlet interfész a matematikai halmaz létrehozására szolgál. A beállított felület a gyűjtőfelület metódusait használja, hogy elkerülje az azonos elemek beillesztését. SortedSet és NavigableSet két interfész, amelyek kiterjesztik a készlet megvalósítását.

Java nyelven beállítva

A fenti ábrán a NavigableSet és SortedSet mindkettő interfész. A NavigableSet kiterjeszti a SortedSet-et, így nem tartja meg a beillesztési sorrendet, és rendezve tárolja az adatokat.

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

Kimenet:

Java nyelven beállítva

Megjegyzés: A szakaszban a programot fájlnévvel fordítottuk le, és osztálynévvel futtattuk. Mert a fájlnév és az osztálynév különbözik.

Műveletek a Set Interfészen

A Készletben elvégezhetjük az összes alapvető matematikai műveletet, mint a metszéspont, az unió és a különbség.

Tegyük fel, hogy két halmazunk van, azaz halmaz1 = [22, 45, 33, 66, 55, 34, 77] és halmaz2 = [33, 2, 83, 45, 3, 12, 55]. A következő műveleteket tudjuk elvégezni a készüléken:

    Útkereszteződés:A metszéspont művelet minden olyan elemet ad vissza, amely mindkét halmazban megtalálható. A halmaz1 és halmaz2 metszéspontja [33, 45, 55] lesz.Unió:Az unió művelet a set1 és set2 összes elemét egyetlen halmazban adja vissza, és ez a halmaz lehet set1 vagy set2. A halmaz1 és halmaz2 uniója a következő lesz: [2, 3, 12, 22, 33, 34, 45, 55, 66, 77, 83].Különbség:A különbség művelet törli a halmazból azokat az értékeket, amelyek egy másik halmazban vannak. A halmaz1 és halmaz2 különbsége [66, 34, 22, 77] lesz.

készletben, az összes hozzáadása() módszert alkalmazzák az egyesülés végrehajtására, megtart minden() módszerrel hajtják végre a kereszteződést és összes eltávolítása() módszert használják a különbség végrehajtására. Vegyünk egy példát, hogy megértsük, hogyan használják ezeket a módszereket a metszésponti, egyesítési és különbségi műveletek végrehajtására.

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

Kimenet:

Java nyelven beállítva

Leírás:

A fenti kódban először két tömböt hozunk létre, azaz egész típusú A és B tömböt. Ezt követően hozunk létre két halmazt, azaz a set1-et és a set2-t, amelyek egész típusúak. Mindkét tömböt listává alakítjuk, és az A tömb elemeit hozzáadjuk a set1-hez, a B tömb elemeit pedig a halmazhoz2.

Az unió végrehajtásához új készletet készítünk union_data a halmaz azonos elemével1. Ezután meghívjuk a halmaz addAll() metódusát, és argumentumként adjuk át neki a set2-t. Ez a módszer hozzáadja az összes elemet a union_data amelyek nincsenek benne és megadja mindkét halmaz unióját.

A kereszteződés végrehajtásához új halmazt hozunk létre kereszteződés_adatai a halmaz azonos elemével1. Ezután meghívjuk a halmaz retainAll() metódusát, és argumentumként átadjuk neki a set2-t. Ez a módszer az összes elemet megkapja a kereszteződés_adatai amelyek jelen vannak a set2-ben, és az intersection_data-ban tárolják. Most az intersection_data mindkét halmaz metszéspontját tartalmazza.

A különbség teljesítéséhez új készletet készítünk különbség_adat a halmaz azonos elemével1. Ezután meghívjuk a set removeAll() metódusát, és a set2-t argumentumként adjuk át neki. Ez a módszer eltávolítja az összes elemet a különbség_adat amelyek jelen vannak a halmazban2 és megadja mindkét halmaz különbségét.

Módszerek beállítása

A halmazfelületen több módszer is elérhető, amelyek segítségével egy bizonyos műveletet végrehajthatunk halmazainkon. Ezek a módszerek a következők:

1) add ()

Az add() metódus új értéket szúr be a halmazba. A metódus igaz és hamis értéket ad vissza a beillesztési elem jelenlététől függően. Hamis értéket ad vissza, ha az elem már jelen van a halmazban, és igazat ad vissza, ha nincs jelen a halmazban.

Szintaxis:

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

Kimenet:

Java nyelven beállítva

2) AddAll()

Az addAll() metódus a megadott gyűjtemény összes elemét hozzáfűzi a halmazhoz.

Szintaxis:

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

Kimenet:

Java nyelven beállítva

3) egyértelmű()

A módszer eltávolítja az összes elemet a halmazból. Nem törli a készlet hivatkozását. Csak a halmaz elemeit törli.

Szintaxis:

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

Kimenet:

Java nyelven beállítva

4) tartalmazza ()

A include() metódus arra szolgál, hogy megismerjük egy elem jelenlétét a halmazban. Visszatérési értéke igaz vagy hamis az elem jelenlététől függően.

Szintaxis:

 boolean contains(Object element) 

SetExample6.java

ddl vs dml
 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)); } } 

Kimenet:

Java nyelven beállítva

5) tartalmazza az összeset()

A módszerrel ellenőrizhető, hogy a gyűjtemény összes eleme elérhető-e a meglévő halmazban vagy sem. Igazat ad vissza, ha a gyűjtemény összes eleme jelen van a halmazban, és hamis értéket ad vissza akkor is, ha valamelyik elem hiányzik a meglévő halmazból.

Szintaxis:

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

Kimenet:

Java nyelven beállítva

6) hashCode()

A módszer a készlet aktuális példányának hash kód értékének származtatására szolgál. Egész típusú hash kódot ad vissza.

Szintaxis:

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

Kimenet:

Java nyelven beállítva

7) üres()

Az isEmpty() metódus a halmaz ürességének azonosítására szolgál. Igazat ad vissza, ha a halmaz üres, és hamis értéket, ha a halmaz nem üres.

Szintaxis:

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

Kimenet:

internet használata
Java nyelven beállítva

8) iterátor()

Az iterator() metódus a halmaz iterátorának megkeresésére szolgál. Az iterátor az elem egyenkénti lekérésére szolgál.

Szintaxis:

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

Kimenet:

Java nyelven beállítva

9) távolítsa el ()

A módszer egy meghatározott elem eltávolítására szolgál a készletből. Visszatérési értéke az elem elérhetőségétől függ. Igazat ad vissza, ha az elem elérhető a halmazban, és false értéket ad vissza, ha nem érhető el a halmazban.

Szintaxis:

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

Kimenet:

Java nyelven beállítva

11) RemoveAll()

A metódus eltávolítja a meglévő halmaz összes elemét a megadott gyűjteményből.

Szintaxis:

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

Kimenet:

Java nyelven beállítva

11) megtart minden()

A metódus az adott gyűjteményben megadott halmaz összes elemét megtartja.

Szintaxis:

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

Kimenet:

Java nyelven beállítva

12) méret()

A metódus a halmaz méretét adja vissza.

Szintaxis:

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

Kimenet:

Java nyelven beállítva

13) RemoveAll()

A metódus a halmaz azonos elemeivel tömb létrehozására szolgál.

Szintaxis:

 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(&apos;data: &apos; + data); Object[] array_data = data.toArray(); System.out.println(&apos;The array is:&apos;); 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;>