Phương thức Java HashMap clone () tạo bản sao cạn của hashmap và trả về nó.
Ở đây, bản sao cạn có nghĩa là các khóa và giá trị không được sao chép. Thay vào đó, các tham chiếu đến khóa / giá trị được sao chép. Để tìm hiểu thêm về bản sao cạn, hãy truy cập Java Shallow Copy.
Cú pháp của clone()
phương thức là:
hashmap.clone()
Ở đây, hashmap là một đối tượng của HashMap
lớp.
tham số clone ()
Các clone()
phương pháp không mất bất kỳ thông số.
clone () Giá trị trả lại
- trả về bản sao của các
HashMap
thể hiện (đối tượng)
Ví dụ 1: Tạo bản sao của 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); ) )
Đầu ra
HashMap: (Java = 14, JavaScript = 1, Python = 3) Bản đồ sao chép: (Java = 14, JavaScript = 1, Python = 3)
Trong ví dụ trên, chúng tôi đã tạo một bản đồ băm có tên các ngôn ngữ. Chú ý biểu thức,
(HashMap)languages.clone()
Đây,
languages.clone()
- trả về một bản sao của các ngôn ngữ đối tượng(HashMap)
- chuyển đổi đối tượng được trả vềclone()
thành một bản đồ băm củaString
khóaInteger
kiểu và giá trị kiểu (Để tìm hiểu thêm, hãy truy cập Java Typecasting)
Ví dụ 2: In Giá trị trả về của 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()); ) )
Đầu ra
Số nguyên tố: (Năm = 5, Hai = 2, Ba = 3) Giá trị trả về của bản sao (): (Năm = 5, Hai = 2, Ba = 3)
Trong ví dụ trên, chúng ta đã tạo một bản đồ băm có tên là primeNumbers. Ở đây, chúng tôi đã in giá trị được trả về clone()
.
Lưu ý : clone()
Phương thức này không dành riêng cho HashMap
lớp. Bất kỳ lớp nào triển khai Clonable
giao diện đều có thể sử dụng clone()
phương thức này.