Java-kaartinterface
Java-kaartinterface
In deze zelfstudie leren we over de Java Map-interface en zijn methoden.
De Map
interface van het Java-verzamelingsframework biedt de functionaliteit van de kaartgegevensstructuur.
Werking van de kaart
In Java zijn elementen van Map
worden opgeslagen in sleutel/waarde paren. Sleutels zijn unieke waarden die zijn gekoppeld aan individuele Waarden .
Een kaart mag geen dubbele sleutels bevatten. En elke sleutel is gekoppeld aan een enkele waarde.
We kunnen waarden openen en wijzigen met behulp van de bijbehorende sleutels.
In het bovenstaande diagram hebben we waarden:Verenigde Staten , Brazilië , en Spanje . En we hebben bijbehorende sleutels:ons , br , en es .
Nu hebben we toegang tot die waarden met de bijbehorende sleutels.
Opmerking: De Map
interface onderhoudt 3 verschillende sets:
- de set sleutels
- de reeks waarden
- de set sleutel/waarde-associaties (toewijzing).
Daarom hebben we individueel toegang tot sleutels, waarden en associaties.
Klassen die Map implementeren
Sinds Map
is een interface, we kunnen er geen objecten van maken.
Om functionaliteiten van de Map
. te gebruiken interface, kunnen we deze klassen gebruiken:
- HashMap
- EnumMap
- LinkedHashMap
- WeakHashMap
- Boomkaart
Deze klassen zijn gedefinieerd in het collecties-framework en implementeren de Map
interface.
Interfaces die de kaart uitbreiden
De Map
interface wordt ook uitgebreid met deze subinterfaces:
- Gesorteerde kaart
- NavigableMap
- ConcurrentMap
Hoe kaart te gebruiken?
In Java moeten we de java.util.Map
. importeren pakket om Map
. te gebruiken . Zodra we het pakket hebben geïmporteerd, kunnen we als volgt een kaart maken.
// Map implementation using HashMap
Map<Key, Value> numbers = new HashMap<>();
In de bovenstaande code hebben we een Map
. gemaakt met de naam nummers . We hebben de HashMap
. gebruikt class om de Map
. te implementeren interface.
Hier,
- Sleutel - een unieke identificatie die wordt gebruikt om elk element (waarde) in een kaart te associëren
- Waarde - elementen geassocieerd met sleutels in een kaart
Kaartmethodes
De Map
interface bevat alle methoden van de Collection
koppel. Het is omdat Collection
is een superinterface van Map
.
Naast methoden die beschikbaar zijn in de Collection
interface, de Map
interface bevat ook de volgende methoden:
- put(K, V) - Voegt de associatie van een sleutel K . in en een waarde V in de kaart. Als de sleutel al aanwezig is, vervangt de nieuwe waarde de oude waarde.
- putAll() - Voegt alle vermeldingen van de opgegeven kaart in op deze kaart.
- putIfAbsent(K, V) - Voegt de associatie in als de sleutel K is niet al gekoppeld aan de waarde V .
- get(K) - Retourneert de waarde die is gekoppeld aan de opgegeven sleutel K . Als de sleutel niet wordt gevonden, retourneert deze
null
. - getOrDefault(K, defaultValue) - Retourneert de waarde die is gekoppeld aan de opgegeven sleutel K . Als de sleutel niet wordt gevonden, wordt de defaultValue . geretourneerd .
- bevatSleutel(K) - Controleert of de opgegeven sleutel K aanwezig is op de kaart of niet.
- bevatValue(V) - Controleert of de opgegeven waarde V aanwezig is op de kaart of niet.
- vervang(K, V) - Vervang de waarde van de sleutel K met de nieuwe gespecificeerde waarde V .
- replace(K, oldValue, newValue) - Vervangt de waarde van de sleutel K met de nieuwe waarde newValue alleen als de sleutel K wordt geassocieerd met de waarde oldValue .
- verwijder(K) - Verwijdert het item van de kaart weergegeven door de sleutel K .
- verwijder(K, V) - Verwijdert het item van de kaart met de sleutel K geassocieerd met waarde V .
- keySet() - Retourneert een set van alle sleutels die aanwezig zijn in een kaart.
- waarden() - Retourneert een set van alle waarden die aanwezig zijn in een kaart.
- entrySet() - Retourneert een set van alle sleutel/waarde-toewijzingen die aanwezig zijn in een kaart.
Implementatie van de kaartinterface
import java.util.Map;
import java.util.HashMap;
class Main {
public static void main(String[] args) {
// Creating a map using the HashMap
Map<String, Integer> numbers = new HashMap<>();
// Insert elements to the map
numbers.put("One", 1);
numbers.put("Two", 2);
System.out.println("Map: " + numbers);
// Access keys of the map
System.out.println("Keys: " + numbers.keySet());
// Access values of the map
System.out.println("Values: " + numbers.values());
// Access entries of the map
System.out.println("Entries: " + numbers.entrySet());
// Remove Elements from the map
int value = numbers.remove("Two");
System.out.println("Removed Value: " + value);
}
}
Uitvoer
Map: {One=1, Two=2} Keys: [One, Two] Values: [1, 2] Entries: [One=1, Two=2] Removed Value: 2
Voor meer informatie over HashMap
, bezoek Java HashMap.
import java.util.Map;
import java.util.TreeMap;
class Main {
public static void main(String[] args) {
// Creating Map using TreeMap
Map<String, Integer> values = new TreeMap<>();
// Insert elements to map
values.put("Second", 2);
values.put("First", 1);
System.out.println("Map using TreeMap: " + values);
// Replacing the values
values.replace("First", 11);
values.replace("Second", 22);
System.out.println("New Map: " + values);
// Remove elements from the map
int removedValue = values.remove("First");
System.out.println("Removed Value: " + removedValue);
}
}
Uitvoer
Map using TreeMap: {First=1, Second=2} New Map: {First=11, Second=22} Removed Value: 11
Voor meer informatie over TreeMap
, bezoek Java TreeMap.
Java