logo

Razlika između Seta i Mape u Javi

U Javi, set i Karta dva su važna sučelja dostupna u okviru zbirke. Oba sučelja Set i Map koriste se za pohranjivanje zbirke objekata kao jedne jedinice. Glavna razlika između set i Karta je li to set je neuređen i sadrži različite elemente, dok Karta sadrži podatke u paru ključ-vrijednost.

U ovom odjeljku ćemo detaljno raspravljati o sučelju Set i Map i vidjeti razlike između njih.

typescript tip datuma

Postavi sučelje

The java.util paket pruža set sučelje. Skup je implementiran proširenjem sučelja zbirke. Ne dopušta nam da mu dodamo isti element. Ne održava redoslijed umetanja jer sadrži sortirane elemente. Za projektiranje matematičkog skupa koristimo skup sučelje u Javi .

Set vs Map u Javi

Implementirajmo Set sučelje u 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); } } 

Izlaz:

Set vs Map u Javi

Sučelje karte

Karta je još jedno važno sučelje dostupno u sučelju zbirke. Dakle, kako bismo koristili Karta sučelje, moramo proširiti sučelje zbirke. Baš kao Set, karta također se koristi za pohranjivanje zbirke objekata kao jedne cjeline. Svaki objekt je pohranjen u paru ključ-vrijednost. Vrijednosti možemo lako pristupiti koristeći samo ključ jer je svaka vrijednost pridružena jedinstvenoj vrijednosti.

8 na 1 multipleksor

Pomoću karte možemo lako pretraživati, ažurirati ili izbrisati element. Karta i SortedMap su dva sučelja, i TreeMap , LinkedHashMap , i HashMap su tri klase Map.

Ako trebamo prijeći kartu, moramo je pretvoriti u skup jer se mapom ne može prijeći. Nakon što ga pretvorimo u Set, možemo ga preći korištenjem Set metoda kao što je KeySet() i unosSet() .

Set vs Map u Javi

Shvatimo kako možemo stvoriti kartu u Javi na primjeru.

xampp alternativa

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

Izlaz:

Set vs Map u Javi

Razlika između sučelja skupa i karte

Oba se sučelja koriste za pohranjivanje zbirke objekata kao jedne jedinice. Glavna razlika između Seta i Mape je u tome što Set sadrži samo podatkovne elemente, a Map sadrži podatke u paru ključ-vrijednost, tako da Map sadrži ključ i njegovu vrijednost.

Razmotrimo sada neke glavne razlike između njih dvoje.

Da ne. set Karta
1. Skup se koristi za konstrukciju matematičkog skupa u Javi. Karta se koristi za mapiranje u bazi podataka.
2. Ne može sadržavati ponovljene vrijednosti. Može imati istu vrijednost za različite ključeve.
3. Skup nam ne dopušta dodavanje istih elemenata u njega. Svaka klasa koja implementira Set sučelje sadrži samo jedinstvenu vrijednost. Karta sadrži jedinstveni ključ i ponovljene vrijednosti. U mapi jedan ili više ključeva mogu imati iste vrijednosti, ali dva ključa ne mogu biti ista.
4. Elemente Seta možemo jednostavno ponavljati koristeći njegovu metodu keyset() i entryset(). Elementi karte ne mogu se ponavljati. Moramo pretvoriti Map u Set za ponavljanje elemenata.
5. Sučelje Set ne održava redoslijed umetanja. Međutim, neke njegove klase, poput LinkedHashSeta, održavaju redoslijed umetanja. Karta također ne održava redoslijed umetanja. Međutim, neke klase Map kao što su TreeMap i LinkedHashMap rade isto.