Il metodo Java HashMap clone () crea la copia superficiale dell'hashmap e la restituisce.
Qui, la copia superficiale significa che le chiavi ei valori non vengono copiati. Vengono invece copiati i riferimenti a chiavi / valori. Per ulteriori informazioni sulla copia superficiale, visita Java Shallow Copy.
La sintassi del clone()
metodo è:
hashmap.clone()
In questo caso, hashmap è un oggetto della HashMap
classe.
parametri clone ()
Il clone()
metodo non accetta parametri.
clone () Valore restituito
- restituisce una copia delle
HashMap
istanze (oggetti)
Esempio 1: crea una copia di HashMap
import java.util.HashMap; class Main ( public static void main(String() args)( // create HashMap HashMap languages = new HashMap(); languages.put("Java", 14); languages.put("Python", 3); languages.put("JavaScript", 1); System.out.println("HashMap: " + languages); // create copy of languages HashMap cloneLanguages = (HashMap)languages.clone(); System.out.println("Cloned HashMap: " + cloneLanguages); ) )
Produzione
HashMap: (Java = 14, JavaScript = 1, Python = 3) HashMap clonato: (Java = 14, JavaScript = 1, Python = 3)
Nell'esempio precedente, abbiamo creato una hashmap denominata languages. Notare l'espressione,
(HashMap)languages.clone()
Qui,
languages.clone()
- restituisce una copia dei linguaggi oggetto(HashMap)
- converte l' oggetto restituito daclone()
in una hashmap diString
tipo chiave eInteger
valori di tipo (per ulteriori informazioni, visitare Java Typecasting)
Esempio 2: stampa il valore restituito di clone ()
import java.util.HashMap; class Main ( public static void main(String() args)( // create a hashmap HashMap primeNumbers = new HashMap(); primeNumbers.put("Two", 2); primeNumbers.put("Three", 3); primeNumbers.put("Five", 5); System.out.println("Numbers: " + primeNumbers); // print the return value of clone() System.out.println("Return value of clone(): " + primeNumbers.clone()); ) )
Produzione
Numeri primi: (Cinque = 5, Due = 2, Tre = 3) Valore di ritorno di clone (): (Cinque = 5, Due = 2, Tre = 3)
Nell'esempio precedente, abbiamo creato una hashmap denominata primeNumbers. Qui abbiamo stampato il valore restituito da clone()
.
Nota : il clone()
metodo non è specifico per la HashMap
classe. Qualsiasi classe che implementa l' Clonable
interfaccia può utilizzare il clone()
metodo.