Kompleti v Javi: vedeti, kako delati z vmesnikom Java Set



Set v Javi je zbirka neurejenih elementov; pri čemer podvojenih vrednosti ni mogoče shraniti. Preberite ta članek in izveste vse o zbirki Java set.

Okvir za zbiranje Java vsebuje številne vmesnike, eden izmed njih je Set Interface. Ta članek vas bo podrobno seznanil s Sets In . Sledijo napotki, ki jih bo zajel ta članek:

Kompleti v Javi

Set je treba definirati kot zbirko neurejenih elementov, v katerih podvojenih vrednosti ni mogoče shraniti. Razširi zbirko in s tem vse metode v so na voljo v vmesniku Set. Izvajajo ga HashSet, LinkedHashSet ali TreeSort.





Kompleti - Zbirke Java - Edureka

Vsaka od teh izvedb med ponavljanjem nabora deluje različno, večinoma glede na razvrščanje elementov in čas, potreben za vstavljanje in dostop do elementov.



    • Hash Set ne ne daje nobenega jamstva za vrstni red elementov med ponavljanjem nabora.
    • LinkedHashSet po drugi strani pa zagotavlja garancijo za vrstni red elementov, medtem ko jih ponavlja.
    • TreeSet zagotavlja garancijo, vendar je komplet razvrščen po naravnem vrstnem redu ali po posebni primerjalni izvedbi.

Kako ustvariti Set?

Naslednja koda definira način ustvarjanja novega nabora:

Nastavi num = nov HashSet ()



Uporabili smo generiki za razglasitev niza celoštevilskega tipa.

Nastavite metode v Javi:

Na nizu lahko izvedemo več operacij, kot sledi:

Dodaj metodo

Metoda add vstavi element v . V spodnjo kodo vstavimo nabor imen.

Nastavite strName = new HashSet () strName.add ('John') strName.add ('Doe') System.out.println (strName)

Izhod:

[John, Doe]

Odstrani način

Ta metoda odstrani navedeni element iz niza.

import java.util. * javni razred Main {public static void main (String args []) {// Ustvarjanje nabora praznih naborov = new HashSet () // Dodajanje elementov naboru set.add ('John') .add ('Doe') // Prikaži nabor System.out.println ('Set:' + set) // Odstranjevanje elementa »Doe« z metodo remove () set.remove ('Doe') // Prikaz spremenjeni nabor System.out.println ('Set:' + set)}}

Izhod:

Komplet: [John, Doe]

Set: [Janez]

Je prazna metoda

Ta metoda preverja, ali je je prazno ni. Vrne true, če je nabor prazen, in false, če je drugače.

import java.io. * import java.util. * javni razred Main {public static void main (String args []) {Set javaSet = new HashSet () // Dodajanje elementov v javaSet Set javaSet.add ('John') .add ('Doe') // Prikaži nabor System.out.println ('Set:' + javaSet) // Preverjanje, ali je nabor prazen System.out.println ('Empty Set:' + javaSet.isEmpty () ) // Brisanje nabora z metodo clear () javaSet.clear () // Preverjanje, ali je nabor prazen System.out.println ('Empty Set:' + javaSet.isEmpty ())}}

Izhod:

Komplet: [John, Doe]

Prazen nabor: napačno

je magister podiplomskega študija

Prazen niz: res

Velikostna metoda

Metoda size () vrne velikost nabora, tj. Število elementov, ki so prisotni v naboru.

import java.util. * javni razred Main {public static void main (String args []) {// Ustvarjanje nabora Set set = new HashSet () set.add ('John') set.add ('Doe') System .out.println ('Set:' + set) // Prikaz velikosti poslanega System.out.println ('Velikost nabora:' + set.size ())}}

Izhod:


Komplet: [John, Doe]

Velikost kompleta: 2

Ponavljanje nad nizom

Po vseh elementih, ki so prisotni v naboru, lahko ponovimo po naslednji metodi:

import java.util. * import java.util.HashSet javni razred Main {public static void main (String args []) {// Ustvarjanje HashSet HashSet javaSet = new HashSet () javaSet.add ('John') javaSet.add ('Doe') // Prikaz nabora System.out.println ('HashSet:' + javaSet) // Ustvarjanje iteratorja Iterator itr = javaSet.iterator () // Prikaz vrednosti po iteraciji System.out.println (' Vrednosti iteratorja: ') while (itr.hasNext ()) {System.out.println (itr.next ())}}}

Izhod:

HashSet: [John, Doe]

Vrednosti iteratorja:

Janez

vrsta funkcije v sql

Ali

Iskanje v kompletu

Z metodo vsebuje () določimo, ali niz vsebuje določen element. Vrne true, če je element najden, sicer pa false.

import java.io. * import java.util.HashSet javni razred Main {public static void main (String args []) {// Ustvarjanje HashSet HashSet javaSet = new HashSet () javaSet.add ('John') javaSet.add ('Doe') // Prikaz HashSet System.out.println ('HashSet:' + javaSet) // Preverjanje 'John' v nizu System.out.println ('John v kompletu:' + javaSet.contains ( 'John')) // Preverjanje 'Hazel' v naboru System.out.println ('Hazel in set:' + javaSet.contains ('Hazel'))}}

Izhod:

HashSet: [John, Doe]

Janez v setu: res

Lešnik v kompletu: napačno

Osnovna operacija na kompletih v Javi

  • Zveza: Če želimo en sklop dodati drugemu, uporabimo operacijo Union
  • Križišče: Za ohranitev skupnih vrednosti iz obeh nizov uporabimo operacijo presečišča.
  • Razlika: Za odstranitev vrednosti enega niza se iz drugega niza uporablja operacija razlike.

Primer

import java.util. * javni razred Main {public static void main (String args []) {Set d = new HashSet () d.addAll (Arrays.asList (new Integer [] {3, 2, 1, 9, 6 , 4, 0})) Set e = new HashSet () e.addAll (Arrays.asList (new Integer [] {3, 1, 9, 5, 2, 0, 7,})) // Union Union Operation Set union = new HashSet (d) union.addAll (e) System.out.println ('Union:' + union) // Intersection Operation Set intersection = new HashSet (d) intersection.retainAll (e) System.out.println (' Presečišče: '+ križišče) // Difference Operation Set razlika = nov HashSet (d) razlika.removeAll (e) System.out.println (' Razlika: '+ razlika)}}

Izhod:

Zveza: [0, 1, 2, 3, 4, 5, 6, 7, 9]

Presečišče: [0, 1, 2, 3, 9]

Razlika: [4, 6]

Metode in postopki, omenjeni v metodi, naredijo vmesnik elementarnega in učinkovitega značaja.

Tako smo prišli do konca tega članka o 'Naborih v Javi'. Če želite izvedeti več, si oglejte Edureka, zaupanja vredno podjetje za spletno učenje. Edurekin tečaj za usposabljanje in certificiranje Java J2EE in SOA je zasnovan tako, da vas usposobi za temeljne in napredne koncepte Java, skupaj z različnimi Java okviri, kot sta Hibernate & Spring.

Imate vprašanje za nas? Prosimo, omenite ga v oddelku za komentarje v članku »nabori v javi« in v najkrajšem možnem času vas bomo kontaktirali.