logo

Razlika med Set in Map v Javi

V Javi, Set in Zemljevid sta dva pomembna vmesnika, ki sta na voljo v ogrodju zbirke. Oba vmesnika Set in Map se uporabljata za shranjevanje zbirke predmetov kot ene same enote. Glavna razlika med Set in Zemljevid je to Set je neurejen in vsebuje različne elemente, medtem ko Zemljevid vsebuje podatke v paru ključ-vrednost.

V tem razdelku bomo podrobno razpravljali o vmesniku Set in Map ter videli razlike med njima.

mockito kadarkoli

Nastavite vmesnik

The java.util paket zagotavlja Set vmesnik. Set je implementiran z razširitvijo zbirnega vmesnika. Ne dovoljuje nam, da bi mu dodali isti element. Ne vzdržuje vrstnega reda vstavljanja, ker vsebuje elemente na razvrščen način. Za oblikovanje matematične množice uporabljamo množico vmesnik v Javi .

Set proti Map v Javi

Implementirajmo vmesnik Set v a Java program.

SetExample.java

 import java.util.*; public class SetExample{ public static void main(String[] args) { // creating LinkedHashSet implementation using the Set Set marvel_movies = new LinkedHashSet(); marvel_movies.add('Captain Marvel'); marvel_movies.add('Thor: Ragnarok'); marvel_movies.add('Captain America: The Winter Soldier'); marvel_movies.add('Ant-Man and the Wasp'); System.out.println(marvel_movies); } } 

Izhod:

Set proti Map v Javi

Vmesnik zemljevida

Zemljevid je še en pomemben vmesnik, ki je na voljo v vmesniku zbirke. Torej, da bi uporabili Zemljevid vmesnik, moramo razširiti vmesnik zbirke. Tako kot Set, zemljevid uporablja se tudi za shranjevanje zbirke predmetov kot ene same enote. Vsak objekt je shranjen v paru ključ-vrednost. Do vrednosti lahko preprosto dostopamo samo s ključem, ker je vsaka vrednost povezana z edinstveno vrednostjo.

linux mint cimet vs mate

S pomočjo zemljevida lahko element enostavno iščemo, ga posodobimo ali izbrišemo. Zemljevid in SortedMap sta dva vmesnika in TreeMap , LinkedHashMap , in HashMap so trije razredi Map.

Če moramo prečkati zemljevid, ga moramo pretvoriti v Set, ker zemljevida ni mogoče prečkati. Ko ga pretvorimo v Set, ga lahko prečkamo z uporabo metod Set, kot je keySet() in vnosSet() .

kje je tipka za vstavljanje na tipkovnici prenosnika
Set proti Map v Javi

Razumejmo, kako lahko ustvarimo zemljevid v Javi na primeru.

MapExample.java

 import java.util.LinkedHashMap; public class MapExample { public static void main(String[] args) { // Creating an empty Linked Hash Map LinkedHashMap students = new LinkedHashMap(); // Adding data to Linked Hash Map in key-value pair students.put(101, 'Aaliyah'); students.put(102, 'Taylor'); students.put(103, 'Zayn'); students.put(104, 'Sabrina'); students.put(105, 'Paul'); // Showing size and data of the Linked Hash Map System.out.println('The size of the Linked Hash Map is:- '+ students.size()); System.out.println(students); // Checking whether a certaint key is available or not if (students.containsKey(105)) { String name = students.get(105); System.out.println('The name of the student having Id 105 is:- ' + name); } } } 

Izhod:

Set proti Map v Javi

Razlika med vmesnikoma Set in Map

Oba vmesnika se uporabljata za shranjevanje zbirke objektov kot ene same enote. Glavna razlika med Setom in Mapom je, da Set vsebuje samo podatkovne elemente, Map pa vsebuje podatke v paru ključ-vrednost, tako da Map vsebuje ključ in njegovo vrednost.

Zdaj pa poglejmo nekaj večjih razlik med obema.

da ne Set Zemljevid
1. Nabor se uporablja za konstruiranje matematičnega nabora v Javi. Zemljevid se uporablja za preslikavo v bazi podatkov.
2. Ne sme vsebovati ponavljajočih se vrednosti. Lahko ima enako vrednost za različne ključe.
3. Set nam ne dovoljuje dodajanja istih elementov vanj. Vsak razred, ki implementira vmesnik Set, vsebuje samo edinstveno vrednost. Zemljevid vsebuje edinstven ključ in ponavljajoče se vrednosti. V aplikaciji Map ima lahko eden ali več ključev enake vrednosti, vendar dva ključa ne moreta biti enaka.
4. Elemente Set lahko preprosto ponavljamo z uporabo metode keyset() in entryset(). Elementov zemljevida ni mogoče ponoviti. Pretvoriti moramo Map v Set za ponavljanje elementov.
5. Vmesnik Set ne vzdržuje vrstnega reda vstavljanja. Vendar nekateri njegovi razredi, kot je LinkedHashSet, ohranjajo vrstni red vstavljanja. Zemljevid tudi ne vzdržuje vrstnega reda vstavljanja. Vendar nekateri razredi zemljevidov, kot sta TreeMap in LinkedHashMap, počnejo enako.