Java HashMap thay thếAll ()

Phương thức Java HashMap ReplaceAll () thay thế tất cả các ánh xạ của hashmap bằng kết quả từ hàm được chỉ định.

Cú pháp của replaceAll()phương thức là:

 hashmap.replaceAll(Bifunction function)

Ở đây, hashmap là một đối tượng của HashMaplớp.

Tham số ReplaceAll ()

Các replaceAll()phương pháp có một tham số duy nhất.

  • hàm - các hoạt động được áp dụng cho mỗi mục nhập của bản đồ băm

ReplaceAll () Giá trị trả lại

Các replaceAll()phương pháp không trả lại bất kỳ giá trị. Thay vào đó, nó thay thế tất cả các giá trị của bản đồ băm bằng các giá trị mới từ hàm.

Ví dụ 1: Thay đổi tất cả các giá trị thành chữ hoa

 import java.util.HashMap; class Main ( public static void main(String() args) ( // create an HashMap HashMap languages = new HashMap(); // add entries to the HashMap languages.put(1, "java"); languages.put(2, "javascript"); languages.put(3, "python"); System.out.println("HashMap: " + languages); // Change all value to uppercase languages.replaceAll((key, value) -> value.toUpperCase()); System.out.println("Updated HashMap: " + languages); ) )

Đầu ra

 HashMap: (1 = java, 2 = javascript, 3 = python) Cập nhật HashMap: (1 = JAVA, 2 = JAVASCRIPT, 3 = PYTHON)

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ữ. Lưu ý dòng,

 languages.replaceAll((key, value) -> value.toUpperCase());

Đây,

  • (key, value) -> value.toUpperCase()là một biểu thức lambda. Nó chuyển đổi tất cả các giá trị của hashmap thành chữ hoa và trả về nó. Để tìm hiểu thêm, hãy truy cập Java Lambda Expression.
  • replaceAll() thay thế tất cả các giá trị của bản đồ băm bằng các giá trị được trả về bởi biểu thức lambda.

Ví dụ 2: Thay thế tất cả các giá trị bằng bình phương các phím

 import java.util.HashMap; class Main ( public static void main(String() args) ( // create an HashMap HashMap numbers = new HashMap(); // insert entries to the HashMap numbers.put(5, 0); numbers.put(8, 1); numbers.put(9, 2); System.out.println("HashMap: " + numbers); // replace all value with the square of key numbers.replaceAll((key, value) -> key * key);; System.out.println("Updated HashMap: " + numbers); ) )

Đầu ra

 HashMap: (5 = 0, 8 = 1, 9 = 2) HashMap cập nhật: (5 = 25, 8 = 64, 9 = 81)

Trong ví dụ trên, chúng tôi đã tạo một bản đồ băm có tên là các số. Lưu ý dòng,

 numbers.replaceAll((key, value) -> key * key);

Đây,

  • (key, value) -> key * key- tính bình phương của khóa và trả về
  • replaceAll() - thay thế tất cả các giá trị của hashmap bằng các giá trị được trả về bởi (key, value) -> key * key

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