v Jave Set a Mapa sú dve dôležité rozhrania dostupné v rámci kolekcie. Rozhrania Set aj Map sa používajú na uloženie kolekcie objektov ako jednej jednotky. Hlavný rozdiel medzi Set a Mapa je to? Set je neusporiadaný a obsahuje rôzne prvky, pričom Mapa obsahuje údaje v páre kľúč – hodnota.
V tejto časti budeme podrobne diskutovať o rozhraní Set a Map a tiež uvidíme rozdiely medzi nimi.
názov kozmetických produktov
Nastaviť rozhranie
The java.util balík poskytuje Set rozhranie. Set je implementovaný rozšírením zberného rozhrania. Nedovoľuje nám pridať do nej rovnaký prvok. Neuchováva poradie vloženia, pretože obsahuje prvky zoradené spôsobom. Na návrh matematickej množiny používame množinu rozhranie v jazyku Java .
Implementujme rozhranie 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); } }
Výkon:
Rozhranie mapy
Mapa je ďalšie dôležité rozhranie dostupné v rozhraní kolekcie. Takže, aby ste mohli použiť Mapa rozhranie, musíme rozšíriť rozhranie kolekcie. Rovnako ako Set, Mapa sa používa aj na uloženie zbierky predmetov ako jedného celku. Každý objekt je uložený v páre kľúč – hodnota. K hodnote môžeme ľahko pristupovať iba pomocou kľúča, pretože každá hodnota je spojená s jedinečnou hodnotou.
reťazec na jsonobject
Pomocou mapy môžeme jednoducho vyhľadávať, aktualizovať alebo mazať prvok. Mapa a SortedMap sú dve rozhrania a Stromová mapa , LinkedHashMap , a HashMap sú tri triedy máp.
Ak potrebujeme prejsť cez mapu, musíme ju previesť na Set, pretože mapu nemožno prechádzať. Po prevedení na Set ho môžeme prechádzať pomocou Set metód ako keySet() a entrySet() .
ostrý uhol
Poďme pochopiť, ako môžeme vytvoriť mapu v Jave na príklade.
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ýkon:
Rozdiel medzi Set a Map Interfaces
Obe rozhrania sa používajú na uloženie kolekcie objektov ako jedného celku. Hlavný rozdiel medzi množinou a mapou je v tom, že množina obsahuje iba dátové prvky a mapa obsahuje dáta v páre kľúč – hodnota, takže mapa obsahuje kľúč a jeho hodnotu.
Teraz pochopme niektoré hlavné rozdiely medzi nimi.
Áno nie. | Set | Mapa |
---|---|---|
1. | Sada sa používa na zostavenie matematickej sady v jazyku Java. | Mapa sa používa na mapovanie v databáze. |
2. | Nemôže obsahovať opakované hodnoty. | Môže mať rovnakú hodnotu pre rôzne kľúče. |
3. | Sada nám neumožňuje pridať do nej rovnaké prvky. Každá trieda, ktorá implementuje rozhranie Set, obsahuje iba jedinečnú hodnotu. | Mapa obsahuje jedinečný kľúč a opakované hodnoty. V mape môže mať jeden alebo viacero kľúčov rovnaké hodnoty, ale dva kľúče nemôžu byť rovnaké. |
4. | Prvky Set môžeme jednoducho iterovať pomocou metódy keyset() a jej metódy entryset(). | Prvky mapy nie je možné opakovať. Na iteráciu prvkov musíme previesť Mapu na Set. |
5. | Objednávka vloženia nie je udržiavaná rozhraním Set. Niektoré z jeho tried, napríklad LinkedHashSet, však zachovávajú poradie vloženia. | Mapa tiež neudržiava objednávku vloženia. Niektoré triedy máp ako TreeMap a LinkedHashMap však robia to isté. |