คำอธิบายของวันนี้เป็นหลักในการใช้วิธีการที่หลากหลายในการใช้ HashMap Traversal เพื่อนำกุญแจและคุณค่าออกมา ก่อนอื่นหากคุณต้องการให้คอลเลกชันสามารถใช้สำหรับการปรับปรุงเพื่อใช้การวนซ้ำใน Java แล้วอินเทอร์เฟซหรือคลาสนี้จะต้องใช้อินเทอร์เฟซที่วนซ้ำ ถ้าอย่างนั้นวิธีการใช้ซ้ำการทำซ้ำจะไม่ถูกอธิบายที่นี่ ต่อไปนี้ส่วนใหญ่จะอธิบายกระบวนการเดินทาง
// กำหนดแผนที่คอลเลกชันทั่วไป <สตริงสตริง> แผนที่ = ใหม่ hashmap <สตริงสตริง> (); // เพิ่มข้อมูลลงในคอลเลกชันผ่านแผนที่ใส่ map.put ("001", "liu bei"); map.put ("002", "Cao Cao"); map.put ("003", "Sun Quan");วิธีที่ 1: ใช้วิธีการคีย์เซ็ตของอินเทอร์เฟซแผนที่เพื่อนำไปใช้งาน
คำถาม: เราทุกคนรู้ว่าอินเทอร์เฟซแผนที่ไม่ได้ใช้อินเทอร์เฟซที่ทำซ้ำได้ดังนั้นทำไมซ้ำด้วยวิธี ketset
การวิเคราะห์: เนื่องจากเมธอดคีย์เซ็ตส่งคืนมุมมองชุดของคีย์ที่มีอยู่ในแผนที่นี้วิธีนี้จึงสามารถส่งคืนความพยายามที่ตั้งไว้ซึ่งหมายความว่าประเภทค่าส่งคืนเป็นอินเตอร์เฟสที่ตั้งไว้ เราสามารถดูผ่านเอกสาร API ที่อินเตอร์เฟสที่ตั้งไว้ใช้อินเทอร์เฟซที่ทำซ้ำได้ดังนั้นจึงสามารถทำซ้ำได้
// การเรียกใช้เมธอดคีย์เซ็ตเพื่อใส่ชุดอินเตอร์เฟสชุดตั้งค่ากลับมาตั้งค่า <string> set = map.keyset (); // ใช้สำหรับการปรับปรุงเพื่อออกคีย์และค่าสำหรับ (รายการสตริง: set) {system.out.println ("คีย์คือ:" + item + "; ค่าค่าคือ:" + map.get (รายการ)); -วิธีที่ 2: ใช้วิธีการค่าของอินเทอร์เฟซแผนที่เพื่อนำไปใช้ (เพื่อการปรับปรุง)
ในทำนองเดียวกัน: เมื่อเรียกวิธีการค่าของอินเทอร์เฟซแผนที่เขาจึงพยายามรวบรวมคอลเลกชันและเมื่อมีการใช้งานอินเทอร์เฟซคอลเลกชันซ้ำแล้วซ้ำอีกดังนั้นจึงสามารถวนซ้ำได้
คอลเลกชัน <String> con = map.values (); สำหรับ (รายการสตริง: con) {system.out.println ("ค่าค่าคือ:" + รายการ); -วิธีที่ 3: ใช้วิธีการ entryset ของอินเทอร์เฟซแผนที่เพื่อนำไปใช้ (เพื่อการปรับปรุง)
ชุดแรก: ค่าส่งคืนของ entrySet () ยังส่งคืนคอลเลกชันชุด ประเภทของคอลเลกชันนี้คือ map.entry Map.entry เป็นอินเทอร์เฟซภายในที่ประกาศโดย MAP อินเทอร์เฟซนี้เป็นทั่วไปและถูกกำหนดเป็นรายการ <k, v> มันแสดงถึงเอนทิตีในแผนที่ (คู่คีย์-ค่า)
ตั้งค่า <entry <string, string >> setEntry = map.entryset (); สำหรับ (รายการ <สตริง, สตริง> รายการ: setEntry) {system.out.println ("คีย์คือ:" + item.getKey () + "; ค่าค่าคือ:" + item.getValue ()); -วิธีที่ 4: ใช้ปุ่ม (). iterable () (ในขณะลูป) ของอินเตอร์เฟสแผนที่
iterable (): ส่งคืนตัววนซ้ำที่วนซ้ำในองค์ประกอบในชุดนี้ องค์ประกอบที่ส่งคืนไม่มีคำสั่งเฉพาะ (เว้นแต่ชุดนี้เป็นอินสแตนซ์ของคลาสที่ให้การรับประกันคำสั่งซื้อ) return value type iterator <e>
Iterator <string> it = map.keyset (). iterator (); // return true หากยังมีองค์ประกอบที่สามารถวนซ้ำได้ ในขณะที่ (it.hasnext ()) {// รับคีย์คีย์คีย์คีย์ = it.next (); System.out.println ("คีย์คือ:" + คีย์ + "; ค่าคือ:" + map.get (คีย์)); - วิธีที่ 5: ใช้ value.iterable () ของอินเทอร์เฟซแผนที่ (ในขณะลูป)
ตัววนซ้ำ <String> it1 = map.values (). iterator (); ในขณะที่ (it1.hasnext ()) {ค่าสตริง = it1.next (); System.out.println ("ค่าค่าคือ:" + ค่า); - วิธีที่ 6: ใช้ entrySet (). iterable () (ในขณะลูป) ของอินเตอร์เฟสแผนที่
Iterator <entry <string, string >> it2 = map.entryset (). iterator (); ในขณะที่ (it2.hasnext ()) {entry <string, string> entry = it2.next (); System.out.println ("คีย์คือ:" + entry.getKey () + "; ค่าค่าคือ:" + entry.getValue ()); -บทความข้างต้นใช้วิธีการต่าง ๆ ในการสำรวจ HashMap นี่คือเนื้อหาทั้งหมดที่ฉันแบ่งปันกับคุณ ฉันหวังว่าคุณจะให้ข้อมูลอ้างอิงและฉันหวังว่าคุณจะสนับสนุน wulin.com มากขึ้น