logo

Rozdíl mezi sadou a mapou v Javě

v Javě, Soubor a Mapa jsou dvě důležitá rozhraní dostupná v rámci kolekce. Rozhraní Set i Map se používají k uložení kolekce objektů jako jedné jednotky. Hlavní rozdíl mezi Soubor a Mapa je to? Soubor je neuspořádaný a obsahuje různé prvky, zatímco Mapa obsahuje data v páru klíč–hodnota.

V této části podrobně probereme rozhraní Set a Map a také uvidíte rozdíly mezi nimi.

název kosmetických produktů

Nastavit rozhraní

The java.util balíček poskytuje Soubor rozhraní. Sada je implementována rozšířením sběrného rozhraní. Nedovoluje nám do něj přidat stejný prvek. Neuchovává pořadí vložení, protože obsahuje prvky seřazené. Pro návrh matematické množiny používáme množinu rozhraní v Javě .

Set vs Map v Javě

Implementujme rozhraní Set v 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); } } 

Výstup:

Set vs Map v Javě

Mapové rozhraní

Mapa je další důležité rozhraní dostupné v rozhraní kolekce. Takže, aby bylo možné použít Mapa rozhraní, musíme rozšířit rozhraní kolekce. Stejně jako Set, Mapa se také používá pro ukládání sbírky předmětů jako jednoho celku. Každý objekt je uložen v páru klíč-hodnota. K hodnotě můžeme snadno přistupovat pouze pomocí klíče, protože každá hodnota je spojena s jedinečnou hodnotou.

výhody instagramu pro osobní použití

Pomocí mapy můžeme prvek snadno vyhledávat, aktualizovat nebo mazat. Mapa a Seřazená mapa jsou dvě rozhraní a Stromová mapa , LinkedHashMap , a HashMap jsou tři třídy mapy.

Pokud potřebujeme procházet mapu, musíme ji převést na sadu, protože mapu nelze procházet. Po převedení na Set ji můžeme procházet pomocí metod Set jako keySet() a entrySet() .

Set vs Map v Javě

Pojďme pochopit, jak můžeme vytvořit mapu v Javě na příkladu.

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

Výstup:

strsep
Set vs Map v Javě

Rozdíl mezi rozhraním Set a Map

Obě rozhraní se používají k ukládání kolekce objektů jako jedné jednotky. Hlavní rozdíl mezi Set a Map spočívá v tom, že Set obsahuje pouze datové prvky a mapa obsahuje data v páru klíč-hodnota, takže Mapa obsahuje klíč a jeho hodnotu.

Pojďme nyní pochopit některé hlavní rozdíly mezi nimi.

Ano ne. Soubor Mapa
1. Sada se používá ke konstrukci matematické sady v Javě. Mapa se používá k mapování v databázi.
2. Nemůže obsahovat opakované hodnoty. Může mít stejnou hodnotu pro různé klíče.
3. Sada nám neumožňuje přidat do ní stejné prvky. Každá třída, která implementuje rozhraní Set, obsahuje pouze jedinečnou hodnotu. Mapa obsahuje jedinečný klíč a opakované hodnoty. V Mapě může mít jeden nebo více klíčů stejné hodnoty, ale dva klíče nemohou být stejné.
4. Elementy Set můžeme snadno iterovat pomocí keyset() a jeho metody entryset(). Prvky mapy nelze iterovat. Pro iteraci prvků potřebujeme převést Map na Set.
5. Pořadí vložení není udržováno rozhraním Set. Některé z jeho tříd, jako LinkedHashSet, však udržují pořadí vložení. Mapa také neuchovává objednávku vložení. Některé třídy Map, jako je TreeMap a LinkedHashMap, však dělají totéž.