logo

Skillnaden mellan uppsättning och karta i Java

I Java, Uppsättning och Karta är två viktiga gränssnitt tillgängliga i samlingsramverket. Både Set- och Map-gränssnitt används för att lagra en samling objekt som en enda enhet. Den största skillnaden mellan Uppsättning och Karta är det Uppsättning är oordnad och innehåller olika element, medan Karta innehåller data i nyckel-värdeparet.

I det här avsnittet kommer vi att diskutera Set och Map-gränssnittet i detalj och se skillnaderna mellan dem.

gör medan du är i java

Ställ in gränssnitt

De java.util paketet ger Uppsättning gränssnitt. Set implementeras genom att utöka samlingsgränssnittet. Det tillåter oss inte att lägga till samma element till den. Den upprätthåller inte insättningsordningen eftersom den innehåller element på ett sorterat sätt. För att designa den matematiska uppsättningen använder vi uppsättningen gränssnitt i Java .

Set vs Map i Java

Låt oss implementera Set-gränssnittet 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:

Set vs Map i Java

Kartgränssnitt

Karta är ett annat viktigt gränssnitt tillgängligt i samlingsgränssnittet. Så, för att använda Karta gränssnittet måste vi utöka samlingsgränssnittet. Precis som Set, Karta används också för att lagra samling av objekt som en enhet. Varje objekt lagras i ett nyckel-värdepar. Vi kan enkelt komma åt värdet med bara nyckeln eftersom varje värde är associerat med ett unikt värde.

fördelningsrätt boolesk algebra

Vi kan enkelt söka, uppdatera eller ta bort elementet genom att använda kartan. Karta och Sorterad karta är de två gränssnitten, och Trädkarta , LinkedHashMap , och HashMap är tre klasser av Map.

Om vi ​​behöver korsa en karta måste vi konvertera den till Set eftersom karta inte kan passeras. Efter att ha konverterat den till Set kan vi gå igenom den med Set-metoderna som keySet() och entrySet() .

regissören Karan Johar
Set vs Map i Java

Låt oss förstå hur vi kan skapa en karta i Java genom att ta ett exempel.

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:

Set vs Map i Java

Skillnaden mellan uppsättnings- och kartgränssnitt

Båda gränssnitten används för att lagra samlingen av objekt som en enda enhet. Huvudskillnaden mellan Set och Map är att Set bara innehåller dataelement, och Map innehåller data i nyckel-värdeparet, så Map innehåller nyckel och dess värde.

Låt oss nu förstå några stora skillnader mellan dem båda.

Ja Nej. Uppsättning Karta
1. Set används för att konstruera den matematiska mängden i Java. Karta används för att göra kartläggning i databasen.
2. Den kan inte innehålla upprepade värden. Det kan ha samma värde för olika nycklar.
3. Set tillåter oss inte att lägga till samma element i den. Varje klass som implementerar Set-gränssnittet innehåller endast det unika värdet. Kartan innehåller unika nyckel och upprepade värden. I Map kan en eller flera nycklar ha samma värden, men två nycklar kan inte vara samma.
4. Vi kan enkelt iterera Set-elementen med hjälp av keyset() och entryset()-metoden för det. Kartelement kan inte itereras. Vi måste konvertera Map till Set för att iterera elementen.
5. Insättningsordningen upprätthålls inte av Set-gränssnittet. Vissa av dess klasser, som LinkedHashSet, upprätthåller dock insättningsordningen. Insättningsordningen upprätthålls inte heller av kartan. Men några av kartklasserna som TreeMap och LinkedHashMap gör detsamma.