แผนที่ได้เพิ่มสองวิธีใหม่เพื่อแทนที่ใน Java 8
1. แทนที่ (k, v)
คีย์ที่ระบุจะถูกแมปกับค่าที่ระบุ (ค่าใหม่) เฉพาะเมื่อคีย์ที่ระบุมีอยู่แล้วและมีค่าการแมปที่เกี่ยวข้องกับมัน
เมื่อไม่มีคีย์ที่ระบุวิธีการจะส่งคืนค่าว่าง
ความคิดเห็น Javadoc อธิบายรหัส Java ที่เทียบเท่าสำหรับการใช้วิธีการค่าเริ่มต้นนี้:
if (map.containskey (คีย์)) {return map.put (key, value);} else {return null;}ต่อไปนี้คือการเปรียบเทียบวิธีการใหม่และวิธีการก่อนหน้านี้ก่อน JDK8:
/ * * แสดงวิธีการแผนที่ (k, v) และเปรียบเทียบกับวิธีการใช้งานก่อน JDK8 วิธีการที่เพิ่มขึ้นใหม่ MAP.REPLACE (K, V) ใน JDK8 * ใช้รหัสน้อยกว่าวิธีการใช้งานแบบดั้งเดิม * และอนุญาตให้ตัวแปรสุดท้ายได้รับค่าส่งคืน */// วิธีการใช้งานก่อนที่จะเปลี่ยนสตริง JDK8 if (stateandcapitals.containskey ("Alaska")) {แทนที่ CapitalCity = stateandcapitals.put ("Alaska", "Juneau");} // วิธีการใช้งานของ JDK8 สายสุดท้ายแทนที่ JDK8City = stateandcapitals.2. แทนที่ (K, V, V)
วิธีการแทนที่แผนที่ที่เพิ่มขึ้นใหม่ที่สองมีช่วงการตีความที่แคบลงในการแทนที่ค่าที่มีอยู่ เมื่อวิธีการนั้น (วิธีการแทนที่ก่อนหน้า) เพียงแค่ครอบคลุมกระบวนการเปลี่ยนของคีย์ที่ระบุด้วยค่าที่ถูกต้องใด ๆ ในแผนที่วิธี "แทนที่" นี้จะยอมรับพารามิเตอร์เพิ่มเติม (สาม) ซึ่งจะถูกแทนที่หากทั้งคีย์ที่ระบุและค่าจับคู่
ความคิดเห็น Javadoc แสดงให้เห็นถึงการใช้วิธีการค่าเริ่มต้นนี้:
if (map.containskey (คีย์) && objects.equals (map.get (คีย์), ค่า)) {map.put (key, newValue); return true;} else {return false;}รายการรหัสต่อไปนี้แสดงการเปรียบเทียบเฉพาะระหว่างวิธีการใช้งานใหม่และวิธีการใช้งานก่อน JDK8
/ * * แสดงวิธีการแผนที่ (K, V, V) และเปรียบเทียบกับวิธีการใช้งานก่อน JDK8 วิธีการที่เพิ่มขึ้นใหม่ของ MAP.REPLACE (K, V, V) ใน JDK8 * ใช้รหัสน้อยกว่าวิธีการใช้งานแบบดั้งเดิม * และอนุญาตให้ตัวแปรสุดท้ายได้รับค่าส่งคืน */// วิธีการใช้งานก่อนที่จะเปลี่ยนบูลีน JDK8 = FALSE; if (stateandcapitals.containskey ("เนวาดา") && objects.equals (stateandcapitals.get ("เนวาดา"), "ลาสเวกัส")) {stateandcapitals.put ("เนวาดา", "คาร์สันซิตี้"); แทนที่ = true; } // วิธีการใช้งานของ JDK8 Final Boolean แทนที่ JDK8 = stateandcapitals.replace ("เนวาดา", "ลาสเวกัส", "คาร์สันซิตี้");ข้างต้นคือการอภิปรายสั้น ๆ เกี่ยวกับวิธีการใหม่ของแผนที่ใน Java 8 - แทนที่ - เนื้อหาทั้งหมดของการแทนที่ ฉันหวังว่าทุกคนจะสนับสนุน wulin.com ~