Java HashMap clone()-Methode
Die clone()-Methode wird verwendet, um eine HashMap zu kopieren, wobei es sich um eine flache Kopie handelt.
Erweiterung:
Eine flache Kopie kopiert nur den Zeiger auf ein Objekt, nicht das Objekt selbst. Das neue und das alte Objekt teilen sich weiterhin denselben Speicher, alsowenn eines der Objekte diese Adresse ändert, wirkt sich das auf das andere Objekt aus.。。
Das Gegenstück zur flachen Kopie ist die tiefe Kopie. Die tiefe Kopie kopiert ein Objekt vollständig aus dem Speicher, öffnet einen neuen Bereich im Heap-Speicher, um das neue Objekt zu speichern, unddas Ändern des neuen Objekts wirkt sich nicht auf das ursprüngliche Objekt aus.。
Die Syntax der clone()-Methode ist:
hashmap.clone()
Hinweis:hashmap ist ein Objekt der Klasse HashMap.
Parameterbeschreibung:
- Keine
Rückgabewert
Gibt eine Kopie der HashMap-Instanz (Objekt) zurück.
Beispiel
Das folgende Beispiel demonstriert die Verwendung der clone()-Methode:
Beispiel
class Main {
public static void main(String[] args) {
HashMap<Integer, String> sites = new HashMap<>();
sites.put(1, "Google");
sites.put(2, "Example");
sites.put(3, "Taobao");
System.out.println("HashMap: " + sites);
// sites kopieren
HashMap<Integer, String> cloneSites = (HashMap<Integer, String>)sites.clone();
System.out.println("Cloned HashMap: " + cloneSites);
}
}
Die Ausgabe beim Ausführen des obigen Programms ist:
HashMap: {1=Google, 2=Example, 3=Taobao}
Cloned HashMap: {1=Google, 2=Example, 3=Taobao}
Im obigen Beispiel haben wir eine HashMap namens sites erstellt und dann die clone()-Methode im Code verwendet, um eine Kopie von sites zu erstellen.
Beachten Sie den Ausdruck:
(HashMap<Integer, String>)sites.clone();
- sites.clone() - gibt das kopierte sites-Objekt zurück
- (HashMap<Integer, String>) konvertiert das zurückgegebene Objekt in eine HashMap, wobei ihre Schlüssel vom Typ Integer und ihre Werte vom Typ String sind.
Der Rückgabewert der clone()-Methode:
Beispiel
class Main {
public static void main(String[] args){
// Eine HashMap erstellen
HashMap<String, Integer> primeNumbers = new HashMap<>();
primeNumbers.put("Zwei", 2);
primeNumbers.put("Drei", 3);
primeNumbers.put("Fünf", 5);
System.out.println("Zahlen: " + primeNumbers);
// Rückgabewert der clone()-Methode ausgeben
System.out.println("Rückgabewert von clone(): " + primeNumbers.clone());
}
}
Die Ausgabe beim Ausführen des obigen Programms ist:
Prime Numbers: {Five=5, Two=2, Three=3}
Return value of clone(): {Five=5, Two=2, Three=3}
Im obigen Beispiel haben wir eine HashMap namens primeNumbers erstellt, und die Ausgabe ist der Rückgabewert der clone()-Methode.
Hinweis:Die clone()-Methode ist nicht spezifisch für die HashMap-Klasse; jede Klasse, die das Cloneable-Interface implementiert, kann die clone()-Methode verwenden.
Andere Erweiterungen
Java HashMap