Peta telah menambahkan dua metode baru untuk diganti di Java 8
1. Ganti (k, v)
Kunci yang ditentukan akan dipetakan ke nilai yang ditentukan (nilai baru) hanya ketika kunci yang ditentukan sudah ada dan ada nilai pemetaan yang terkait dengannya.
Ketika kunci yang ditentukan tidak ada, metode ini mengembalikan nol
Komentar Javadoc menjelaskan kode Java yang setara untuk implementasi metode nilai default ini:
if (map.containskey (key)) {return map.put (key, value);} else {return null;}Berikut ini adalah perbandingan metode baru dan metode sebelumnya sebelum jdk8:
/ * * Demonstrasi metode peta.replace (k, v) dan bandingkan dengan metode implementasi sebelum jdk8. Metode MAP.Replace (K, V) yang baru ditambahkan dalam JDK8 * menggunakan lebih sedikit baris kode daripada metode implementasi tradisional * dan memungkinkan variabel akhir untuk menerima nilai pengembalian. */// Metode Implementasi Sebelum string JDK8 REPLACEDCAPITALCITY; if (statesAndCapitals.containsKey("Alaska")) { replacedCapitalCity = statesAndCapitals.put("Alaska", "Juneau");}// Implementation method of JDK8 final String replacedJdk8City = statesAndCapitals.replace("Alaska", "Juneau");2. Ganti (k, v, v)
Metode penggantian peta yang baru ditambahkan kedua memiliki rentang interpretasi yang lebih sempit dalam mengganti nilai yang ada. Ketika metode itu (metode ganti sebelumnya) hanya mencakup proses penggantian kunci yang ditentukan dengan nilai apa pun yang valid di peta, metode "ganti" ini menerima parameter tambahan (ketiga), yang hanya akan diganti jika kunci yang ditentukan dan nilai yang cocok.
Komentar Javadoc menggambarkan implementasi metode nilai default ini:
if (map.containskey (key) && objects.equals (map.get (key), value)) {map.put (key, newValue); return true;} else {return false;}Daftar kode berikut menunjukkan perbandingan khusus antara metode implementasi baru dan metode implementasi sebelum JDK8.
/ * * Demonstrasi metode MAP.Replace (K, V, V) dan bandingkan dengan metode implementasi sebelum JDK8. Metode MAP.Replace (K, V, V) yang baru ditambahkan dalam JDK8 * menggunakan lebih sedikit baris kode daripada metode implementasi tradisional * dan memungkinkan variabel akhir untuk menerima nilai pengembalian. */// metode implementasi sebelum jdk8 boolean diganti = false; if (statesandcapitals.containskey ("nevada") && objects.equals (statesandcapitals.get ("nevada"), "las vegas")) {statesandcapitals.put ("nevada", "carson city"); diganti = true; } // Metode Implementasi JDK8 Final Boolean RigracedJdk8 = StatesandCapitals.replace ("Nevada", "Las Vegas", "Carson City");Di atas adalah diskusi singkat tentang metode peta baru di Java 8 - REPLACE - semua isi ganti. Saya harap semua orang akan mendukung wulin.com ~