logo

Forskellen mellem sæt og kort i Java

I Java, Sæt og Kort er to vigtige grænseflader tilgængelige i samlingsrammen. Både sæt- og kortgrænseflader bruges til at gemme en samling af objekter som en enkelt enhed. Den væsentligste forskel mellem Sæt og Kort er det Sæt er uordnet og indeholder forskellige elementer, hvorimod Kort indeholder dataene i nøgleværdi-parret.

I dette afsnit vil vi diskutere sæt- og kortgrænsefladen i detaljer, også se forskellene mellem dem.

powershell kommentar multiline

Indstil grænseflade

Det java.util pakken giver Sæt interface. Set implementeres ved at udvide samlingsgrænsefladen. Det tillader os ikke at tilføje det samme element til det. Den opretholder ikke indsættelsesrækkefølgen, fordi den indeholder elementer på en sorteret måde. Til at designe det matematiske sæt bruger vi sættet grænseflade i Java .

Indstil vs kort i Java

Lad os implementere Set-grænsefladen i en 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); } } 

Produktion:

Indstil vs kort i Java

Kortgrænseflade

Kort er en anden vigtig grænseflade tilgængelig i samlingsgrænsefladen. Så for at bruge Kort grænsefladen, er vi nødt til at udvide samlingsgrænsefladen. Ligesom Sæt, kort bruges også til at opbevare samling af objekter som en enkelt enhed. Hvert objekt gemmes i et nøgleværdi-par. Vi kan nemt få adgang til værdien ved kun at bruge nøglen, fordi hver værdi er forbundet med en unik værdi.

Kald en js-funktion fra html

Vi kan nemt søge, opdatere eller slette elementet ved at bruge kortet. Kort og Sorteret kort er de to grænseflader, og Trækort , LinkedHashMap , og HashMap er tre klasser af Map.

Hvis vi har brug for at krydse et kort, skal vi konvertere det til et sæt, fordi kort ikke kan krydses. Efter at have konverteret det til Set, kan vi krydse det ved hjælp af Set-metoderne som keySet() og entrySet() .

jerv vs grævling
Indstil vs kort i Java

Lad os forstå, hvordan vi kan oprette et kort i Java ved at tage et eksempel.

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

Produktion:

Indstil vs kort i Java

Forskellen mellem sæt- og kortgrænseflader

Begge grænseflader bruges til at gemme samlingen af ​​objekter som en enkelt enhed. Den største forskel mellem sæt og kort er, at sæt kun indeholder dataelementer, og kortet indeholder data i nøgleværdi-parret, så kortet indeholder nøgle og dens værdi.

Lad os nu forstå nogle store forskelle mellem dem begge.

Ja Nej. Sæt Kort
1. Sæt bruges til at konstruere det matematiske sæt i Java. Kort bruges til at lave kortlægning i databasen.
2. Det kan ikke indeholde gentagne værdier. Det kan have samme værdi for forskellige nøgler.
3. Set tillader os ikke at tilføje de samme elementer i det. Hver klasse, der implementerer Set-grænsefladen, indeholder kun den unikke værdi. Kortet indeholder unikke nøgleværdier og gentagne værdier. I Map kan en eller flere nøgler have de samme værdier, men to nøgler kan ikke være ens.
4. Vi kan nemt iterere Set-elementerne ved hjælp af keyset() og entryset()-metoden. Kortelementer kan ikke gentages. Vi skal konvertere Map til Set for at gentage elementerne.
5. Indsættelsesrækkefølgen vedligeholdes ikke af Set-grænsefladen. Men nogle af dens klasser, som LinkedHashSet, opretholder indsættelsesrækkefølgen. Indsættelsesrækkefølgen vedligeholdes heller ikke af kortet. Men nogle af kortklasserne som TreeMap og LinkedHashMap gør det samme.