Neste tutorial, aprenderemos sobre a interface do Mapa Java e seus métodos.
A Map
interface da estrutura de coleções Java fornece a funcionalidade da estrutura de dados do mapa.
Trabalho de Mapa
Em Java, os elementos de Map
são armazenados em pares de chave / valor . Chaves são valores singulares associados individuais Valores .
Um mapa não pode conter chaves duplicadas. E cada chave está associada a um único valor.
Podemos acessar e modificar valores usando as chaves associadas a eles.
No diagrama acima, temos os valores: Estados Unidos, Brasil e Espanha. E temos as chaves correspondentes: us, br e es.
Agora, podemos acessar esses valores usando suas chaves correspondentes.
Nota: A Map
interface mantém 3 conjuntos diferentes:
- o conjunto de chaves
- o conjunto de valores
- o conjunto de associações de chave / valor (mapeamento).
Portanto, podemos acessar chaves, valores e associações individualmente.
Classes que implementam Map
Por Map
ser uma interface, não podemos criar objetos a partir dela.
Para usar as funcionalidades da Map
interface, podemos usar as seguintes classes:
- HashMap
- EnumMap
- LinkedHashMap
- WeakHashMap
- TreeMap
Essas classes são definidas na estrutura de coleções e implementam a Map
interface.

Interfaces que estendem o mapa
A Map
interface também é estendida por estas subinterfaces:
- SortedMap
- NavigableMap
- ConcurrentMap

Como usar o mapa?
Em Java, devemos importar o java.util.Map
pacote para poder usar Map
. Depois de importar o pacote, veja como podemos criar um mapa.
// Map implementation using HashMap Map numbers = new HashMap();
No código acima, criamos um Map
número nomeado. Usamos a HashMap
classe para implementar a Map
interface.
Aqui,
- Chave - um identificador único usado para associar cada elemento (valor) em um mapa
- Valor - elementos associados por chaves em um mapa
Métodos de Mapa
A Map
interface inclui todos os métodos da Collection
interface. É porque Collection
é uma super interface de Map
.
Além dos métodos disponíveis na Collection
interface, a Map
interface também inclui os seguintes métodos:
- put (K, V) - Insere a associação de uma chave K e um valor V no mapa. Se a chave já estiver presente, o novo valor substituirá o valor antigo.
- putAll () - Insere todas as entradas do mapa especificado neste mapa.
- putIfAbsent (K, V) - Insere a associação se a chave K ainda não estiver associada ao valor V.
- get (K) - Retorna o valor associado à chave K especificada. Se a chave não for encontrada, ela retorna
null
. - getOrDefault (K, defaultValue) - Retorna o valor associado à chave especificada K. Se a chave não for encontrada, ele retorna o defaultValue.
- containsKey (K) - Verifica se a chave K especificada está presente no mapa ou não.
- containsValue (V) - Verifica se o valor especificado V está presente no mapa ou não.
- substituir (K, V) - Substitua o valor da chave K pelo novo valor especificado V.
- substituir (K, oldValue, newValue) - Substitui o valor da chave K pelo novo valor newValue apenas se a chave K estiver associada ao valor oldValue.
- remove (K) - Remove a entrada do mapa representada pela chave K.
- remove (K, V) - Remove a entrada do mapa que possui a chave K associada ao valor V.
- keySet () - Retorna um conjunto de todas as chaves presentes em um mapa.
- values () - Retorna um conjunto de todos os valores presentes em um mapa.
- entrySet () - Retorna um conjunto de todos os mapeamentos de chave / valor presentes em um mapa.
Implementação da Interface do Mapa
1. Implementando a classe HashMap
import java.util.Map; import java.util.HashMap; class Main ( public static void main(String() args) ( // Creating a map using the HashMap Map 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); ) )
Resultado
Mapa: (Um = 1, Dois = 2) Chaves: (Um, Dois) Valores: (1, 2) Entradas: (Um = 1, Dois = 2) Valor Removido: 2
Para saber mais sobre HashMap
, visite Java HashMap.
2. Implementando a classe TreeMap
import java.util.Map; import java.util.TreeMap; class Main ( public static void main(String() args) ( // Creating Map using TreeMap Map 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); ) )
Resultado
Mapa usando TreeMap: (Primeiro = 1, Segundo = 2) Novo Mapa: (Primeiro = 11, Segundo = 22) Valor Removido: 11
Para saber mais sobre TreeMap
, visite Java TreeMap.