Java HashMap replace ()

Metode Java HashMap replace () menggantikan pemetaan untuk kunci yang ditentukan dengan nilai baru yang ditentukan dalam peta hash.

Sintaks dari replace()metode ini adalah:

 hashmap.replace(K key, V oldValue, V newValue)

Di sini, hashmap adalah objek HashMapkelas.

ganti () Parameter

The replace()Metode dapat mengambil 3 parameter.

  • kunci - kunci yang pemetaannya akan diganti
  • oldValue (opsional) - nilai yang akan diganti dalam pemetaan
  • newValue - oldValue diganti dengan nilai ini

ganti () Mengembalikan Nilai

replace()Metode HashMap menggantikan pemetaan dan mengembalikan:

  • nilai sebelumnya yang terkait dengan kunci yang ditentukan, jika parameter opsional oldValue tidak ada
  • true, jika parameter opsional oldValue ada

Catatan : Metode ini kembali null, jika kunci yang ditentukan dipetakan ke nilai null atau kunci tidak ada di hashmap.

Contoh 1: Ganti Entri di HashMap

 import java.util.HashMap; class Main ( public static void main(String() args) ( // create an HashMap HashMap languages = new HashMap(); // add entries to HashMap languages.put(1, "Python"); languages.put(2, "English"); languages.put(3, "JavaScript"); System.out.println("HashMap: " + languages); // replace mapping for key 2 String value = languages.replace(2, "Java"); System.out.println("Replaced Value: " + value); System.out.println("Updated HashMap: " + languages); ) )

Keluaran

 HashMap: (1 = Python, 2 = Inggris, 3 = JavaScript) Nilai yang Diganti: HashMap yang Diperbarui dalam Bahasa Inggris: (1 = Python, 2 = Java, 3 = JavaScript)

Dalam contoh di atas, kami telah membuat hashmap bernama bahasa. Di sini, kami telah menggunakan metode replace () untuk mengganti entri untuk kunci 1 (1 = Inggris) dengan nilai Java yang ditentukan.

Di sini, replace()metode tidak memiliki parameter oldValue opsional. Karenanya, ini mengembalikan nilai lama (Inggris).

Contoh 2: Ganti HashMap () dengan Nilai Lama

 import java.util.HashMap; class Main ( public static void main(String() args) ( // create an HashMap HashMap countries = new HashMap(); // insert items to the HashMap countries.put("Washington", "America"); countries.put("Ottawa", "Canada"); countries.put("Canberra", "Australia"); System.out.println("Countries:" + countries); // replace mapping (Washington = America) countries.replace("Washington", "America", "USA"); // return true countries.replace("Canberra", "New Zealand", "Victoria"); // return false System.out.println("Countries after replace():" + countries); ) )

Keluaran

 Negara: (Canberra = Australia, Ottawa = Kanada, Washington = Amerika) Negara setelah ganti (): (Canberra = Australia, Ottawa = Kanada, Washington = USA)

Dalam contoh di atas, kami telah membuat hashmap bernama negara. Perhatikan garisnya,

 countries.replace("Washington", "America", "USA");

Di sini, metode replace () menyertakan parameter opsional oldValue (Amerika). Karenanya, pemetaan di mana peta kunci Washington untuk menilai Amerika diganti dengan nilai baru AS.

Namun, perhatikan barisnya,

 countries.replace ("Canberra", "New Zealand", "Victoria");

Di sini, dalam hashmap, kunci Canberra tidak memetakan untuk menilai Selandia Baru. Karenanya, metode replace () tidak menggantikan nilai apa pun.

Catatan : Kita bisa menggunakan metode Java HashMap clear () untuk menghapus semua pemetaan dari hashmap.

HashMap put () Vs. menggantikan()

Sintaks dari metode put()dan replace()terlihat sangat mirip di HashMap.

 // syntax of put() hashmap.put(key, value) // syntax of replace() hashmap.replace(key, value)

Dan, jika hashmap berisi pemetaan untuk kunci yang ditentukan , kedua metode tersebut akan menggantikan nilai yang terkait dengan kunci yang ditentukan.

Namun, jika hashmap tidak berisi pemetaan apa pun untuk kunci yang ditentukan , maka

  • yang put()metode memasukkan pemetaan baru untuk ditentukan kunci dan nilai
  • yang replace()kembali metodenull

Contoh 3: HashMap put () Vs. menggantikan()

 import java.util.HashMap; class Main ( public static void main(String() args) ( // create an HashMap HashMap languages1 = new HashMap(); // insert entries to HashMap languages1.put(1, "Python"); languages1.put(2, "JavaScript"); // create another HashMap similar to languages1 HashMap languages2 = new HashMap(); // puts all entries from languages1 to languages2 languages2.putAll(languages1); System.out.println("HashMap: " + languages1); // use of put() languages2.put(3, "Java"); System.out.println("HashMap after put():" + languages2); // use of replace() languages1.replace(3, "Java"); System.out.println("HashMap after replace():" + languages1); ) )

Keluaran

 HashMap: (1 = Python, 2 = JavaScript) HashMap setelah put (): (1 = Python, 2 = JavaScript, 3 = Java) HashMap setelah ganti (): (1 = Python, 2 = JavaScript)

Pada contoh di atas, kami telah membuat dua hashmaps bernama bahasa1 dan bahasa2. Kami telah menggunakan metode HashMap putAll () sehingga kedua hashmaps memiliki pemetaan yang sama.

Di sini, pemetaan untuk kunci 3 tidak ada di hashmap. Karenanya,

  • yang put()metode menambahkan pemetaan baru (3 = Jawa) untukHashMap
  • yang replace()metode tidak melakukan operasi apapun

Untuk mempelajari lebih lanjut tentang menambahkan entri, kunjungi Java HashMap put ().

Artikel yang menarik...