Assoziatives Array in Java
- Verwendung von das assoziative Array in Java
- Zusammenfassung des assoziativen Arrays in Java
- Implementieren ein assoziatives Array in Java
- Erstellen Sie ein assoziatives Array in Java
- Hinzufügen von Elementen zum assoziativen Array in Java
- Traverse-Elemente des assoziativen Arrays in Java
-
Elemente des assoziativen Arrays mit der Methode
forEach()
in Java 8 durchlaufen
Ein assoziatives Array ist eine Art Array, das die Menge der Elemente in Paaren aus Schlüssel
und Wert
speichert. Es ist eine Sammlung von Schlüsseln und Werten, wobei der Schlüssel eindeutig ist und einem Wert zugeordnet ist.
Wenn wir auf das Element aus dem assoziativen Array zugreifen müssen, müssen wir den Namen des Arrays aufrufen und den Schlüssel auf dessen Wert wir zugreifen wollen
übergeben.
Verwendung von das assoziative Array in Java
Zum Beispiel haben wir ein Array namens marks
, das die Rollennummer und die Noten der Schüler speichert.
Wenn wir also auf die Note eines bestimmten Schülers zugreifen müssen, können wir so Noten 105
nennen, wobei Noten der Name eines Arrays sind und 105
die Rollennummer des Schülers ist, keine Indexnummer, die es ist nicht möglich in einem Array, wenn wir die Java-Sprache verwenden.
Daher unterstützt assoziatives Array Java nicht, aber wir können es leicht mit HashMap
erreichen. Java unterstützt keine assoziativen Arrays, kann aber mithilfe der Map implementiert werden.
Zusammenfassung des assoziativen Arrays in 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...
Implementieren ein assoziatives Array in Java
Um ein assoziatives Array in Java zu implementieren, haben wir HashMap
verwendet, eine Implementierungsklasse der Map-Schnittstelle. Lassen Sie uns Schritt für Schritt verstehen.
Importieren und initialisieren Sie zuerst die HashMap
, d. h. erstellen Sie eine Instanz von HashMap, indem Sie die folgenden Anweisungen verwenden.
import java.util.HashMap;
HashMap<String, String> hashmap = new HashMap<>();
Fügen Sie dann mit der Methode put()
den Schlüsselwert zur HashMap
hinzu.
hashmap.put("Key1", "Value1");
Konvertieren Sie die HashMap
mithilfe der Methode entrySet()
in Set, um doppelte Schlüssel zu entfernen.
Set<Map.Entry<String, String> > set = map.entrySet();
Konvertieren Sie das Set in eine ArrayList
, die ein Array ist, das wir wollen.
List<Map.Entry<String, String>> list = new ArrayList<>(set);
Erstellen Sie ein assoziatives Array in Java
In diesem Beispiel haben wir die Klasse HashMap
verwendet, um das assoziative Array in Java zu implementieren.
Sehen Sie, es enthält Daten im Schlüssel-Wert-Paar-Format, und wir haben die Methode getKey()
verwendet, um auf den Schlüssel zuzugreifen, und die Methode getValue()
, um auf Werte zuzugreifen.
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());
}
}
}
Ausgabe:
Pant is Wicket-Keeper
Jadeja is All-rounder
Bumrah is Bowler
Virat is Batsman
Wie wir bereits besprochen haben, sollte dieser Schlüssel eindeutig sein. Wenn wir dieselben Schlüssel in das assoziative Array einfügen, wird eines der Schlüssel-Wert
-Paare verworfen.
Wir haben zwei gleiche Schlüssel, Virat
, in den folgenden Code eingefügt. Siehe das Beispiel unten.
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());
}
}
}
Ausgabe:
Pant is Wicket-Keeper
Jadeja is All-rounder
Bumrah is Bowler
Virat is Captain
Hinzufügen von Elementen zum assoziativen Array in Java
Wir können ein Element zu einem Array in der Karte hinzufügen, indem wir die Methode put()
verwenden. Ebenso können wir mit der Methode remove()
ein Element aus einem Array entfernen.
Wir können die Größe des Arrays mit der Methode size()
herausfinden.
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);
}
}
}
Ausgabe:
The Size of fruits Map is : 4
The Size of fruits Map is : 3
The colour of Apple is: Red
Traverse-Elemente des assoziativen Arrays in Java
Wir können die for-each
-Schleife verwenden, um das assoziative Array zu durchlaufen. Da HashMap
zum java.util
-Paket gehört, können wir die foreach
-Schleife verwenden, um seine Elemente zu iterieren.
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());
}
}
}
Ausgabe:
The Size of fruits Map is : 4
Guava : Green
Apple : Red
Blackberries : Purple
Banana : Yellow
Elemente des assoziativen Arrays mit der Methode forEach()
in Java 8 durchlaufen
Wenn Sie mit Java 8 oder einer höheren Version arbeiten, können Sie die Methode forEach()
verwenden, um die Array-Elemente zu durchlaufen. Die Methode forEach()
benötigt als Argument einen lambda
-Ausdruck.
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));
}
}
Ausgabe:
The Size of fruits Map is : 4
Guava : Green
Apple : Red
Blackberries : Purple
Banana : Yellow
Dieses Tutorial hat untersucht, dass Java das assoziative Array technisch nicht unterstützt, aber wir können es leicht mit HashMap
erreichen.