Klon Java HashMap ()

Metoda clone () Java HashMap vytvoří mělkou kopii hashmapy a vrátí ji.

Tady mělká kopie znamená, že klíče a hodnoty nejsou kopírovány. Místo toho jsou zkopírovány odkazy na klíče / hodnoty. Další informace o mělké kopii najdete v mělké kopii Java.

Syntaxe clone()metody je:

 hashmap.clone()

Zde je hashmap objekt HashMaptřídy.

parametry clone ()

clone()Metoda nebere žádné parametry.

clone () návratová hodnota

  • vrací kopii HashMapinstancí (objektů)

Příklad 1: Vytvořte kopii 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); ) )

Výstup

 HashMap: (Java = 14, JavaScript = 1, Python = 3) Klonovaná HashMap: (Java = 14, JavaScript = 1, Python = 3)

Ve výše uvedeném příkladu jsme vytvořili hashmapu pojmenovanou jazyky. Všimněte si výrazu,

 (HashMap)languages.clone()

Tady,

  • languages.clone() - vrátí kopii jazyků objektů
  • (HashMap)- převede objekt vrácený clone()do na hashmapu Stringtypového klíče a Integerhodnot typu (Další informace najdete v Java Typecastingu)

Příklad 2: Tisk návratové hodnoty klonu ()

 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()); ) )

Výstup

 Prvočísla: (Pět = 5, Dva = 2, Tři = 3) Návratová hodnota klonu (): (Pět = 5, Dva = 2, Tři = 3)

Ve výše uvedeném příkladu jsme vytvořili hashmapu s názvem primeNumbers. Zde jsme vytiskli hodnotu vrácenou clone().

Poznámka : clone()Metoda není pro HashMaptřídu specifická . Metodu Clonablemůže použít jakákoli třída, která implementuje rozhraní clone().

Zajímavé články...