logo

Unterschied zwischen Set und Map in Java

In Java, Satz Und Karte sind zwei wichtige Schnittstellen, die im Collection-Framework verfügbar sind. Sowohl Set- als auch Map-Schnittstellen werden verwendet, um eine Sammlung von Objekten als einzelne Einheit zu speichern. Der Hauptunterschied zwischen Satz Und Karte ist das Satz ist ungeordnet und enthält verschiedene Elemente, wohingegen Karte enthält die Daten im Schlüssel-Wert-Paar.

In diesem Abschnitt werden wir die Set- und Map-Schnittstelle im Detail besprechen und die Unterschiede zwischen ihnen sehen.

bin nach bcd

Schnittstelle festlegen

Der java.util Paket bietet die Satz Schnittstelle. Set wird durch Erweiterung der Sammlungsschnittstelle implementiert. Es erlaubt uns nicht, dasselbe Element hinzuzufügen. Die Einfügereihenfolge wird nicht beibehalten, da die Elemente sortiert enthalten sind. Zum Entwerfen des mathematischen Sets verwenden wir das Set Schnittstelle in Java .

Set vs. Map in Java

Lassen Sie uns die Set-Schnittstelle in a implementieren Java Programm.

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

Ausgabe:

Set vs. Map in Java

Kartenschnittstelle

Karte ist eine weitere wichtige Schnittstelle, die in der Collection-Schnittstelle verfügbar ist. Also, um das zu nutzen Karte Schnittstelle müssen wir die Collection-Schnittstelle erweitern. So wie Set, Karte wird auch zum Speichern einer Sammlung von Objekten als einzelne Einheit verwendet. Jedes Objekt wird in einem Schlüssel-Wert-Paar gespeichert. Wir können einfach mit dem Schlüssel auf den Wert zugreifen, da jeder Wert einem eindeutigen Wert zugeordnet ist.

Git-Pull-Syntax

Mithilfe der Karte können wir das Element einfach suchen, aktualisieren oder löschen. Karte Und SortedMap sind die beiden Schnittstellen, und TreeMap , LinkedHashMap , Und HashMap sind drei Klassen von Map.

Wenn wir eine Map durchqueren müssen, müssen wir sie in Set konvertieren, da Map nicht durchquert werden kann. Nachdem wir es in Set konvertiert haben, können wir es mit den Set-Methoden wie durchqueren Schlüsselsatz() Und EintragSet() .

Set vs. Map in Java

Lassen Sie uns anhand eines Beispiels verstehen, wie wir eine Karte in Java erstellen können.

Namen von Städten in den USA

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

Ausgabe:

Set vs. Map in Java

Unterschied zwischen Set- und Map-Schnittstellen

Beide Schnittstellen werden verwendet, um die Objektsammlung als eine Einheit zu speichern. Der Hauptunterschied zwischen Set und Map besteht darin, dass Set nur Datenelemente enthält und Map die Daten im Schlüssel-Wert-Paar enthält, sodass Map den Schlüssel und seinen Wert enthält.

Lassen Sie uns nun einige wesentliche Unterschiede zwischen beiden verstehen.

Ja Nein. Satz Karte
1. Set wird verwendet, um das mathematische Set in Java zu erstellen. Map wird für die Zuordnung in der Datenbank verwendet.
2. Es darf keine wiederholten Werte enthalten. Es kann für verschiedene Schlüssel den gleichen Wert haben.
3. Set erlaubt uns nicht, dieselben Elemente darin hinzuzufügen. Jede Klasse, die die Set-Schnittstelle implementiert, enthält nur den eindeutigen Wert. Die Karte enthält eindeutige Schlüssel und wiederholte Werte. In Map können ein oder mehrere Schlüssel dieselben Werte haben, zwei Schlüssel können jedoch nicht identisch sein.
4. Wir können die Set-Elemente einfach mit der Methode „keyset()“ und „entryset()“ iterieren. Kartenelemente können nicht iteriert werden. Wir müssen Map in Set konvertieren, um die Elemente zu iterieren.
5. Die Einfügereihenfolge wird von der Set-Schnittstelle nicht verwaltet. Einige seiner Klassen, wie z. B. LinkedHashSet, behalten jedoch die Einfügereihenfolge bei. Die Einfügungsreihenfolge wird auch nicht von der Karte beibehalten. Einige der Map-Klassen wie TreeMap und LinkedHashMap tun jedoch dasselbe.