În Java, A stabilit și Hartă sunt două interfețe importante disponibile în cadrul de colecție. Ambele interfețe Set și Map sunt utilizate pentru a stoca o colecție de obiecte ca o singură unitate. Principala diferență între A stabilit și Hartă este asta A stabilit este neordonat și conține elemente diferite, în timp ce Hartă conține datele din perechea cheie-valoare.
În această secțiune, vom discuta în detaliu interfața Set și Hartă și vom vedea diferențele dintre ele.
cheie unică mysql
Setați interfața
The java.util pachetul oferă A stabilit interfață. Setul este implementat prin extinderea interfeței de colecție. Nu ne permite să-i adăugăm același element. Nu menține ordinea de inserare deoarece conține elemente într-un mod sortat. Pentru proiectarea setului matematic, folosim setul interfață în Java .
Să implementăm interfața Set în 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); } }
Ieșire:
Interfață de hartă
Hartă este o altă interfață importantă disponibilă în interfața Collection. Deci, pentru a utiliza Hartă interfață, trebuie să extindem interfața Collection. Exact ca Setați, Hartă este, de asemenea, utilizat pentru stocarea colecțiilor de obiecte ca o singură unitate. Fiecare obiect este stocat într-o pereche cheie-valoare. Putem accesa cu ușurință valoarea folosind doar cheia, deoarece fiecare valoare este asociată cu o valoare unică.
algoritm pentru bfs
Putem căuta, actualiza sau șterge cu ușurință elementul folosind Harta. Hartă și SortedMap sunt cele două interfețe și Harta copacului , LinkedHashMap , și HashMap sunt trei clase de Hartă.
Dacă trebuie să traversăm o Hartă, trebuie să o transformăm în Set, deoarece Harta nu poate fi parcursă. După ce l-am convertit în Set, îl putem traversa folosind metodele Set cum ar fi keySet() și entrySet() .
Să înțelegem cum putem crea o hartă în Java luând un exemplu.
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); } } }
Ieșire:
ouă de Paște în Android
Diferența dintre interfețele set și map
Ambele interfețe sunt folosite pentru a stoca colecția de obiecte ca o singură unitate. Principala diferență dintre Set și Map este că Set conține doar elemente de date, iar Harta conține datele din perechea cheie-valoare, deci Map conține cheia și valoarea acesteia.
Acum, să înțelegem câteva diferențe majore între ambele.
Da nu. | A stabilit | Hartă |
---|---|---|
1. | Setul este folosit pentru a construi setul matematic în Java. | Harta este folosită pentru a face cartografierea în baza de date. |
2. | Nu poate conține valori repetate. | Poate avea aceeași valoare pentru diferite chei. |
3. | Setul nu ne permite să adăugăm aceleași elemente în el. Fiecare clasă care implementează interfața Set conține doar valoarea unică. | Harta conține cheie unică și valori repetate. În Map, una sau mai multe chei pot avea aceleași valori, dar două chei nu pot fi la fel. |
4. | Putem repeta cu ușurință elementele Set folosind keyset() și metoda entryset() a acesteia. | Elementele hărții nu pot fi repetate. Trebuie să convertim Map în Set pentru a repeta elementele. |
5. | Ordinea de inserare nu este menținută de interfața Set. Cu toate acestea, unele dintre clasele sale, cum ar fi LinkedHashSet, mențin ordinea de inserare. | Ordinea de inserare nu este, de asemenea, menținută de Hartă. Cu toate acestea, unele dintre clasele Map precum TreeMap și LinkedHashMap fac același lucru. |