Bản sao Java HashMap ()

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 HashMaplớ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 HashMapthể 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ủa Stringkhóa Integerkiể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 HashMaplớp. Bất kỳ lớp nào triển khai Clonablegiao diện đều có thể sử dụng clone()phương thức này.

thú vị bài viết...