logo

Különbség a Set és a Map között Java nyelven

Java nyelven, Készlet és Térkép két fontos interfész elérhető a gyűjtési keretrendszerben. Mind a Set, mind a Map interfészek objektumok gyűjteményének egyetlen egységként történő tárolására szolgálnak. A fő különbség a között Készlet és Térkép az, hogy a Készlet rendezetlen és különböző elemeket tartalmaz, míg Térkép tartalmazza a kulcs-érték párban lévő adatokat.

Ebben a részben részletesen megvitatjuk a Set és Map felületet, és látni fogjuk a köztük lévő különbségeket is.

egy java tömb visszaadása

Interfész beállítása

A java.util csomag biztosítja a Készlet felület. A készlet a gyűjtőfelület kiterjesztésével valósul meg. Nem teszi lehetővé, hogy ugyanazt az elemet adjuk hozzá. Nem tartja meg a beillesztési sorrendet, mert rendezve tartalmaz elemeket. A matematikai halmaz megtervezéséhez a Halmazt használjuk interfész Java nyelven .

Set vs Map Java nyelven

Valósítsuk meg a Set felületet a Jáva 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); } } 

Kimenet:

Set vs Map Java nyelven

Térképes felület

Térkép a Gyűjtemény felületén elérhető másik fontos felület. Tehát annak érdekében, hogy a Térkép felületet, ki kell bővítenünk a Gyűjtemény felületet. Akárcsak Készlet, térkép objektumok gyűjteményének egyetlen egységként történő tárolására is használható. Minden objektum egy kulcs-érték párban van tárolva. Könnyen hozzáférhetünk az értékhez csak a kulcs használatával, mert minden értékhez egyedi érték tartozik.

java következő

A Térkép segítségével egyszerűen megkereshetjük, frissíthetjük vagy törölhetjük az elemet. Térkép és Rendezett térkép a két interfész, és TreeMap , LinkedHashMap , és HashMap A térkép három osztálya.

Ha egy térképet kell bejárnunk, akkor azt Set-be kell konvertálnunk, mert a térképet nem lehet bejárni. A Set-be konvertálás után a Set metódusokkal, mint pl keySet() és entrySet() .

ekta kapoor színész
Set vs Map Java nyelven

Nézzük meg, hogyan hozhatunk létre térképet Java nyelven egy példa segítségével.

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

Kimenet:

Set vs Map Java nyelven

Különbség a készlet és a térkép interfészek között

Mindkét interfész az objektumok gyűjteményének egyetlen egységként való tárolására szolgál. A fő különbség a Set és a Map között az, hogy a készlet csak adatelemeket tartalmaz, a Térkép pedig a kulcs-érték párban lévő adatokat, tehát a Map tartalmazza a kulcsot és annak értékét.

Most pedig értsünk meg néhány fő különbséget a kettő között.

Igen nem. Készlet Térkép
1. A halmaz a matematikai halmaz létrehozására szolgál Java nyelven. A térkép az adatbázisban való leképezésre szolgál.
2. Nem tartalmazhat ismétlődő értékeket. Különböző kulcsokhoz azonos értéke lehet.
3. A készlet nem teszi lehetővé, hogy ugyanazokat az elemeket adjuk hozzá. A Set felületet megvalósító minden osztály csak az egyedi értéket tartalmazza. A térkép egyedi kulcsot és ismétlődő értékeket tartalmaz. A Térképben egy vagy több kulcsnak lehet azonos értéke, de két kulcs nem lehet azonos.
4. A Set elemeket könnyen iterálhatjuk a keyset() és annak enterset() metódusával. A térképelemek nem iterálhatók. Az elemek iterálásához a Map-et Set-be kell konvertálnunk.
5. A beillesztési sorrendet a Set felület nem tartja fenn. Néhány osztálya, például a LinkedHashSet azonban fenntartja a beillesztési sorrendet. A beillesztési sorrendet szintén nem tartja fenn a Térkép. Néhány térképosztály azonban, például a TreeMap és a LinkedHashMap ugyanezt teszi.