Clone Java HashMap ()

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 por clone()em um hashmap de Stringchave de tipo e Integervalores 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.

Artigos interessantes...