Java HashMap -klooni () -menetelmä tekee hashmapin matalan kopion ja palauttaa sen.
Tässä matala kopio tarkoittaa, että avaimia ja arvoja ei kopioida. Sen sijaan kopioidaan viitteet avaimiin / arvoihin. Lisätietoja matalasta kopiosta on Java Shallow Copy -sivulla.
Menetelmän syntaksi clone()on:
hashmap.clone()
Tässä hashmap on HashMapluokan kohde.
klooni () -parametrit
clone()Menetelmä ei ota parametreja.
klooni () palautusarvo
- palauttaa kopion
HashMapinstansseista (objekteista)
Esimerkki 1: Tee kopio HashMapista
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); ) )
Tuotos
HashMap: (Java = 14, JavaScript = 1, Python = 3) Kloonattu HashMap: (Java = 14, JavaScript = 1, Python = 3)
Yllä olevassa esimerkissä olemme luoneet hashmap-nimiset kielet. Huomaa ilmaisu,
(HashMap)languages.clone()
Tässä,
languages.clone()- palauttaa kopion objektikielistä(HashMap)- muuntaa palauttaman objektin tyypin avaimen ja tyypin arvojenclone()hashmapiksi (Lisätietoja on Java Typecastingissa)StringInteger
Esimerkki 2: Tulosta kloonin () palautusarvo
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()); ) )
Tuotos
Pääluvut: (viisi = 5, kaksi = 2, kolme = 3) kloonin palautusarvo (): (viisi = 5, kaksi = 2, kolme = 3)
Yllä olevassa esimerkissä olemme luoneet hashmap-nimisen primeNumbers. Tässä olemme tulostaneet palauttamasi arvon clone().
Huomaa : clone()Menetelmä ei ole ominainen HashMapluokalle. Mikä tahansa luokka, joka toteuttaa Clonablerajapinnan, voi käyttää clone()menetelmää.








