O método clone () do Java HashMap faz a cópia superficial do hashmap e a retorna.
Aqui, a cópia superficial significa que as chaves e os valores não são copiados. Em vez disso, as referências a chaves / valores são copiadas. Para saber mais sobre a cópia superficial, visite Java Shallow Copy.
A sintaxe do clone()método é:
hashmap.clone()
Aqui, hashmap é um objeto da HashMapclasse.
Parâmetros clone ()
O clone()método não leva nenhum parâmetro.
clone () Valor de Retorno
- retorna uma cópia das
HashMapinstâncias (objetos)
Exemplo 1: Faça uma cópia do 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); ) )
Resultado
HashMap: (Java = 14, JavaScript = 1, Python = 3) HashMap clonado: (Java = 14, JavaScript = 1, Python = 3)
No exemplo acima, criamos um hashmap denominado linguagens. Observe a expressão,
(HashMap)languages.clone()
Aqui,
languages.clone()- retorna uma cópia das linguagens do objeto(HashMap)- converte o objeto retornado porclone()em um hashmap deStringchave de tipo eIntegervalores de tipo (para saber mais, visite Java Typecasting)
Exemplo 2: Imprimir o valor de retorno de 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()); ) )
Resultado
Números Primos: (Cinco = 5, Dois = 2, Três = 3) Valor de retorno do clone (): (Cinco = 5, Dois = 2, Três = 3)
No exemplo acima, criamos um hashmap denominado primeNumbers. Aqui, imprimimos o valor retornado por clone().
Nota : o clone()método não é específico para a HashMapclasse. Qualquer classe que implemente a Clonableinterface pode usar o clone()método.








