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 .
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:
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
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:
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. |