Metóda clone () Java HashMap vytvorí plytkú kópiu hashmapy a vráti ju.
Tu plytká kópia znamená, že kľúče a hodnoty sa nekopírujú. Namiesto toho sa kopírujú odkazy na kľúče / hodnoty. Ak sa chcete dozvedieť viac informácií o plytkej kópii, navštívte stránku Java Plytká kópia.
Syntax clone()
metódy je:
hashmap.clone()
Tu je hashmap objektom HashMap
triedy.
parametre klonu ()
clone()
Metóda neberie žiadne parametre.
clone () návratová hodnota
- vráti kópiu
HashMap
inštancií (objektov)
Príklad 1: Vytvorte kópiu 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ýkon
HashMap: (Java = 14, JavaScript = 1, Python = 3) Klonovaná HashMap: (Java = 14, JavaScript = 1, Python = 3)
Vo vyššie uvedenom príklade sme vytvorili hashmapu pomenovanú jazyky. Všimnite si výraz,
(HashMap)languages.clone()
Tu,
languages.clone()
- vráti kópiu jazykov objektov(HashMap)
- prevádza objekt vrátenýclone()
do na hashmapuString
typového kľúča aInteger
typových hodnôt (ďalšie informácie nájdete v dokumente Java Typecasting)
Príklad 2: Tlač návratovej 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ýkon
Prvočísla: (päť = 5, dva = 2, tri = 3) návratová hodnota klonu (): (päť = 5, dva = 2, tri = 3)
Vo vyššie uvedenom príklade sme vytvorili hashmapu s názvom primeNumbers. Tu sme vytlačili hodnotu vrátenú používateľom clone()
.
Poznámka : clone()
Metóda nie je špecifická pre HashMap
triedu. Túto metódu Clonable
môže použiť ktorákoľvek trieda, ktorá implementuje rozhranie clone()
.