Tableau associatif en Java
- Utiliser le tableau associatif en Java
- Résumé du tableau associatif en Java
- Implémenter un tableau associatif en Java
- Créer un tableau associatif en Java
- Ajouter des éléments au tableau associatif en Java
- Traverser les éléments du tableau associatif en Java
-
Traverser les éléments du tableau associatif à l’aide de la méthode
forEach()
en Java 8
Un tableau associatif est un type de tableau qui stocke l’ensemble des éléments dans des paires clé
et valeur
. C’est une collection de clés et de valeurs où la clé est unique et est associée à une valeur.
Si on doit accéder à l’élément depuis le tableau associatif, il faut appeler le nom du tableau et passer la clé dont on veut accéder à la valeur
.
Utiliser le tableau associatif en Java
Par exemple, nous avons un tableau nommé marques qui stocke le numéro de matricule et les notes des élèves.
Donc, si nous devons accéder à la note d’un étudiant en particulier, nous pouvons appeler ainsi les marques 105
, où les notes sont le nom d’un tableau et 105
est le numéro de rôle de l’étudiant, pas un numéro d’index qui est pas possible dans un tableau si nous utilisons le langage Java.
Par conséquent, le tableau associatif ne prend pas en charge Java, mais nous pouvons facilement le réaliser en utilisant HashMap
. Java ne prend pas en charge les tableaux associatifs mais peut être implémenté à l’aide de Map.
Résumé du tableau associatif en Java
HashMap<String, String> hashmap = new HashMap<>();
// method to add the key,value pair in hashmap
hashmap.put("Key1", "Value1");
hashmap.put("Key2", "Value2");
hashmap.put("Key3", "Value3");
// and many more...
// get the value 1 and 2
System.out.println(hashmap.get("Key1"));
System.out.println(hashmap.get("Key2"));
// and many more...
Implémenter un tableau associatif en Java
Pour implémenter un tableau associatif en Java, nous avons utilisé HashMap
, une classe d’implémentation de l’interface Map. Comprenons étape par étape.
Tout d’abord, importez et initialisez le HashMap
, c’est-à-dire créez une instance de HashMap en utilisant les instructions suivantes.
import java.util.HashMap;
HashMap<String, String> hashmap = new HashMap<>();
Ensuite, en utilisant la méthode put()
, ajoutez la valeur de la clé au HashMap
.
hashmap.put("Key1", "Value1");
Convertissez le HashMap
en Set en utilisant la méthode entrySet()
pour supprimer les clés en double.
Set<Map.Entry<String, String> > set = map.entrySet();
Convertissez le Set en un ArrayList
qui est un tableau que nous voulons.
List<Map.Entry<String, String>> list = new ArrayList<>(set);
Créer un tableau associatif en Java
Dans cet exemple, nous avons utilisé la classe HashMap
pour implémenter le tableau associatif en Java.
Vous voyez, il contient des données au format paire clé-valeur, et nous avons utilisé la méthode getKey()
pour accéder à la clé et la méthode getValue()
pour accéder aux valeurs.
import java.io.*;
import java.util.*;
public class SimpleTesting {
public static void main(String[] args) {
HashMap<String, String> hashmap = new HashMap<>();
hashmap.put("Virat", "Batsman");
hashmap.put("Bumrah", "Bowler");
hashmap.put("Jadeja", "All-rounder");
hashmap.put("Pant", "Wicket-Keeper");
Set<Map.Entry<String, String>> s = hashmap.entrySet();
List<Map.Entry<String, String>> array = new ArrayList<>(s);
for (int i = 0; i < array.size(); i++) {
System.out.println(array.get(i).getKey() + " is " + array.get(i).getValue());
}
}
}
Production:
Pant is Wicket-Keeper
Jadeja is All-rounder
Bumrah is Bowler
Virat is Batsman
Comme nous en avons déjà discuté, cette clé doit être unique. Si nous insérons les mêmes clés dans le tableau associatif, il supprimera l’une des paires clé-valeur
.
Nous avons inséré deux mêmes clés, Virat
, dans le code suivant. Voir l’exemple ci-dessous.
import java.io.*;
import java.util.*;
public class SimpleTesting {
public static void main(String[] args) {
HashMap<String, String> hashmap = new HashMap<>();
hashmap.put("Virat", "Batsman");
hashmap.put("Bumrah", "Bowler");
hashmap.put("Jadeja", "All-rounder");
hashmap.put("Pant", "Wicket-Keeper");
hashmap.put("Virat", "Captain");
Set<Map.Entry<String, String>> s = hashmap.entrySet();
List<Map.Entry<String, String>> array = new ArrayList<>(s);
for (int i = 0; i < array.size(); i++) {
System.out.println(array.get(i).getKey() + " is " + array.get(i).getValue());
}
}
}
Production:
Pant is Wicket-Keeper
Jadeja is All-rounder
Bumrah is Bowler
Virat is Captain
Ajouter des éléments au tableau associatif en Java
Nous pouvons ajouter un élément à un tableau dans la carte en utilisant la méthode put()
. De même, nous pouvons supprimer un élément d’un tableau en utilisant la méthode remove()
.
Nous pouvons connaître la taille du tableau en utilisant la méthode size()
.
import java.util.HashMap;
public class SimpleTesting {
public static void main(String[] args) {
HashMap<String, String> fruits = new HashMap<String, String>();
fruits.put("Apple", "Red");
fruits.put("Banana", "Yellow");
fruits.put("Guava", "Green");
fruits.put("Blackberries", "Purple");
System.out.println("The Size of fruits Map is : " + fruits.size());
// Remove Banana from the HashMap
fruits.remove("Banana");
// To find out the size of the Hashmap
System.out.println("The Size of fruits Map is : " + fruits.size());
// Check whether the key is present in the Hashmap or not
String fruit_key = "Apple";
if (fruits.containsKey(fruit_key)) {
System.out.println("The colour of " + fruit_key + " is: " + fruits.get(fruit_key));
} else {
System.out.println("There is no entry for the fruit of " + fruit_key);
}
}
}
Production:
The Size of fruits Map is : 4
The Size of fruits Map is : 3
The colour of Apple is: Red
Traverser les éléments du tableau associatif en Java
On peut utiliser la boucle for-each
pour parcourir le tableau associatif. Puisque HashMap
appartient au package java.util
, nous pouvons utiliser la boucle for-each
pour itérer ses éléments.
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
public class SimpleTesting {
public static void main(String[] args) {
HashMap<String, String> fruits = new HashMap<String, String>();
fruits.put("Apple", "Red");
fruits.put("Banana", "Yellow");
fruits.put("Guava", "Green");
fruits.put("Blackberries", "Purple");
System.out.println("The Size of fruits Map is : " + fruits.size());
for (Map.Entry element : fruits.entrySet()) {
String key = (String) element.getKey();
System.out.println(key + " : " + element.getValue());
}
}
}
Production:
The Size of fruits Map is : 4
Guava : Green
Apple : Red
Blackberries : Purple
Banana : Yellow
Traverser les éléments du tableau associatif à l’aide de la méthode forEach()
en Java 8
Si vous travaillez avec Java 8 ou une version supérieure, vous pouvez utiliser la méthode forEach()
pour parcourir les éléments du tableau. La méthode forEach()
nécessite une expression lambda
comme argument.
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
public class SimpleTesting {
public static void main(String[] args) {
HashMap<String, String> fruits = new HashMap<String, String>();
fruits.put("Apple", "Red");
fruits.put("Banana", "Yellow");
fruits.put("Guava", "Green");
fruits.put("Blackberries", "Purple");
System.out.println("The Size of fruits Map is : " + fruits.size());
fruits.forEach((k, v) -> System.out.println(k + " : " + v));
}
}
Production:
The Size of fruits Map is : 4
Guava : Green
Apple : Red
Blackberries : Purple
Banana : Yellow
Ce tutoriel a étudié que Java ne supporte techniquement pas le tableau associatif, mais nous pouvons facilement y parvenir en utilisant HashMap
.