วิธีการวนซ้ำ HashMap ใน Java

Withi Kar Wn Sa Hashmap Ni Java



ในขณะที่รักษาบันทึกใน Java อาจมีบางกรณีที่ผู้พัฒนาจำเป็นต้องเข้าถึง ' แฮชแมป ” เพื่อใช้ประโยชน์หรือทิ้งมัน ตัวอย่างเช่น การใช้ชุดรายการเฉพาะซ้ำหรือย้ายชุดข้อมูลที่ล้าสมัยไปยังขยะ ในกรณีดังกล่าว การวนซ้ำ HashMap ใน Java จะช่วยในการเข้าถึงข้อมูลและจัดการหน่วยความจำได้อย่างมีประสิทธิภาพ

บทความนี้จะกล่าวถึงวิธีการทำซ้ำ 'HashMap' ใน Java

HashMap ใน Java คืออะไร

เอ “ แฮชแมป ” จัดเก็บรายการในรูปแบบของ “ คีย์-ค่า ” คู่และสิ่งเหล่านี้สามารถเรียกใช้โดยดัชนีประเภทอื่น (เช่น สตริง) นอกจากนี้ยังอนุญาตให้จัดเก็บคีย์ null







จะวนซ้ำ HashMap ใน Java ได้อย่างไร

HashMap ใน Java สามารถวนซ้ำได้โดยใช้แนวทางด้านล่าง:



วิธีที่ 1: วนซ้ำ HashMap ใน Java โดยใช้ 'for' Loop

ชุดรายการ () ” วิธีการให้มุมมองชุดของรายการ/องค์ประกอบทั้งหมดที่มีอยู่ในแฮชแมป “ รับคีย์ () ' และ ' รับค่า () ” วิธีการดึงคีย์และค่าจากรายการตามลำดับ วิธีการเหล่านี้สามารถใช้ร่วมกันเพื่อเข้าถึงแฮชแมปก่อน และวนซ้ำผ่านคีย์และค่าที่สะสมไว้โดยใช้ ' สำหรับ ” วนซ้ำ



ไวยากรณ์





แฮชแมป รายการชุด ( )

ในไวยากรณ์ข้างต้น “ แฮชแมป ” หมายถึง “ แฮชแมป ” วัตถุคลาส

ตัวอย่าง

มาดูภาพรวมตัวอย่างด้านล่าง:



นำเข้า java.util.HashMap ;

นำเข้า java.util.Map ;

สาธารณะ ระดับ ตัวอย่าง {

สาธารณะ คงที่ เป็นโมฆะ หลัก ( สตริง หาเรื่อง [ ] ) {

แผนที่ < จำนวนเต็ม , สตริง > custom_hashmap = ใหม่ แฮชแมป < จำนวนเต็ม , สตริง > ( ) ;

custom_hashmap. ใส่ ( 1 , 'แฮร์รี่' ) ;

custom_hashmap. ใส่ ( 2 , 'เดวิด' ) ;

custom_hashmap. ใส่ ( 3 , 'ซาร่า' ) ;

สำหรับ ( แผนที่ . รายการ < จำนวนเต็ม , สตริง > ชุด : custom_hashmap. รายการชุด ( ) ) {

ระบบ . ออก . พิมพ์ ( ชุด. รับคีย์ ( ) + ':' + ชุด. รับค่า ( ) ) ;

} }

}

ในรหัสที่กำหนดข้างต้น:

  • ประการแรก สร้าง “ แฮชแมป ” ชื่อว่า “ custom_hashmap ” เพื่อให้คีย์ถูกระบุเป็น “ จำนวนเต็ม ” และมูลค่าเป็น “ สตริง ” แสดงในรหัสเป็น “ แผนที่<จำนวนเต็ม, สตริง> '.
  • หลังจากนั้นเชื่อมโยง “ ใส่() ” วิธีการที่มีแฮชแมปเพื่อแทรกค่าที่ระบุในรูปแบบของ “ คีย์-ค่า “คู่.
  • ตอนนี้ ใช้ “ สำหรับ ” วนรวมกับ “ ชุดรายการ () ” วิธีการวนซ้ำผ่านแฮชแมป
  • โปรดทราบว่าการระบุ “ แผนที่ทางเข้า ” อินเทอร์เฟซช่วยให้ผู้ใช้สามารถทำงานกับรายการแผนที่
  • สุดท้าย ใช้ “ รับคีย์ () ' และ ' รับค่า () ” วิธีการเข้าถึงคีย์และค่าที่จัดสรรและแสดงผล

เอาต์พุต

ในเอาต์พุตนี้ สามารถวิเคราะห์ได้ว่าคู่คีย์-ค่าที่ตั้งค่าไว้ถูกวนซ้ำและแสดงผล

แนวทางที่ 2: วนซ้ำ HashMap ใน Java โดยใช้วิธี “forEach()”

แต่ละ() ” วิธีการใช้เพื่อใช้การดำเนินการเฉพาะสำหรับแต่ละองค์ประกอบ วิธีนี้สามารถนำไปใช้ในการวนซ้ำผ่านแต่ละคู่ของคีย์-ค่าใน ' แฮชแมป ” และแสดงมัน

ไวยากรณ์

แต่ละ ( กับ สุดยอด และ > x )

ในไวยากรณ์ข้างต้น เมธอดนี้ใช้พารามิเตอร์ “ x ” ซึ่งสอดคล้องกับการดำเนินการที่ต้องดำเนินการสำหรับแต่ละองค์ประกอบ

ตัวอย่าง

ทำตามรหัสที่ระบุไว้ด้านล่าง:

นำเข้า java.util.HashMap ;

นำเข้า java.util.Map ;

สาธารณะ ระดับ ตัวอย่าง {

สาธารณะ คงที่ เป็นโมฆะ หลัก ( สตริง หาเรื่อง [ ] ) {

แผนที่ < จำนวนเต็ม , สตริง > custom_hashmap = ใหม่ แฮชแมป < จำนวนเต็ม , สตริง > ( ) ;

custom_hashmap. ใส่ ( 1 , 'แฮร์รี่' ) ;

custom_hashmap. ใส่ ( 2 , 'เดวิด' ) ;

custom_hashmap. ใส่ ( 3 , 'ซาร่า' ) ;

custom_hashmap. แต่ละ ( ( คีย์,ค่า ) -> ระบบ . ออก . พิมพ์ ( สำคัญ + ':' + ค่า ) ) ;

} }

ในภาพประกอบด้านบน:

  • ระลึกถึงแนวทางที่กล่าวถึงเพื่อสร้าง ' แฮชแมป ” และจัดสรรค่าในรูปแบบ “ คีย์-ค่า “คู่.
  • ตอนนี้เชื่อมโยง ' แต่ละ() ” ด้วย HashMap ที่สร้างขึ้นและแสดงแต่ละรายการที่วนซ้ำ “ คีย์-ค่า ” จับคู่บนคอนโซล

เอาต์พุต

อย่างที่คุณเห็นได้ว่าคีย์และค่าที่เกี่ยวข้องใน ' แฮชแมป ” ได้รับการทำซ้ำ

แนวทางที่ 3: วนซ้ำ HashMap ใน Java โดยใช้วัตถุ “Iterator”

ตัวทำซ้ำ ” วัตถุใช้เพื่อวนรอบองค์ประกอบทีละรายการและ “ ตัววนซ้ำ () ” สามารถใช้เมธอดเพื่อดึง Iterator ได้ “ มีถัดไป () ” วิธีการให้ “ จริง ” หากมีองค์ประกอบถัดไปอยู่ในแฮชแมป และ “ ต่อไป() ” วิธีการให้องค์ประกอบแฮชแมปถัดไป วิธีการเหล่านี้สามารถใช้ร่วมกันเพื่อวนซ้ำผ่าน HashMap ตรวจสอบว่ามีคู่คีย์-ค่าถัดไปหรือไม่ และดึงข้อมูลกลับมา

ไวยากรณ์

ตัวทำซ้ำ ซ้ำ = x. วนซ้ำ ( ) ;

ในไวยากรณ์นี้:

  • x ” เป็นวัตถุสะสม
  • ซ้ำ ” เป็นอินเทอร์เฟซประเภท Iterator และสอดคล้องกับ “ x '.

ตัวอย่าง

มาดูภาพรวมตัวอย่างด้านล่าง:

นำเข้า java.util.Iterator ;

นำเข้า java.util.Map.Entry ;

นำเข้า java.util.HashMap ;

นำเข้า java.util.Map ;

สาธารณะ ระดับ ตัวอย่าง {

สาธารณะ คงที่ เป็นโมฆะ หลัก ( สตริง หาเรื่อง [ ] ) {

แผนที่ < จำนวนเต็ม , สตริง > custom_hashmap = ใหม่ แฮชแมป < จำนวนเต็ม , สตริง > ( ) ;

custom_hashmap. ใส่ ( 1 , 'แฮร์รี่' ) ;

custom_hashmap. ใส่ ( 2 , 'เดวิด' ) ;

custom_hashmap. ใส่ ( 3 , 'ซาร่า' ) ;

ตัวทำซ้ำ < รายการ < จำนวนเต็ม , สตริง >> ซ้ำ = custom_hashmap. รายการชุด ( ) . วนซ้ำ ( ) ;

ในขณะที่ ( ซ้ำ มีถัดไป ( ) ) {

แผนที่ . รายการ < จำนวนเต็ม , สตริง > กำหนด = ( แผนที่ . รายการ < จำนวนเต็ม , สตริง > ) ซ้ำ ต่อไป ( ) ;

ระบบ . ออก . พิมพ์ ( กำหนด. รับคีย์ ( ) + ':' + กำหนด. รับค่า ( ) ) ;

} } }

ในการสาธิตข้างต้น ใช้ขั้นตอนต่อไปนี้:

  • ทำซ้ำวิธีการที่กล่าวถึงเพื่อสร้าง ' แฮชแมป ” และจัดสรร “ คีย์-ค่า “คู่.
  • ตอนนี้เชื่อมโยง ' ตัวทำซ้ำ ” วัตถุที่มี HashMap ที่สร้างขึ้นและวนซ้ำคู่คีย์-ค่าด้วยความช่วยเหลือของ “ ชุดรายการ () ' และ ' ตัววนซ้ำ () ” วิธีการ
  • สุดท้าย ตรวจสอบ HashMap โดยตรวจสอบองค์ประกอบถัดไปผ่าน ' มีถัดไป () ' วิธี. ถ้าใช่ ให้แสดงองค์ประกอบถัดไปโดยใช้ปุ่ม “ ต่อไป() ' วิธี.
  • ที่แนบมา ' รับคีย์ () ' และ ' รับค่า () ” วิธีการจะทำให้แน่ใจว่าองค์ประกอบที่สะสมนั้นถูกดึงมาในรูปแบบของ “ คีย์-ค่า ' คู่.

เอาต์พุต

ผลลัพธ์ข้างต้นแสดงว่าการวนซ้ำทำอย่างเหมาะสม

บทสรุป

เอ “ แฮชแมป ” จัดเก็บรายการใน “ คีย์-ค่า “คู่. สามารถทำซ้ำได้ด้วยความช่วยเหลือของ ' สำหรับ ” วนซ้ำ “ แต่ละ() ” วิธีการ หรือ “ วนซ้ำ ' วัตถุ. การวนซ้ำตาม HashMap สามารถทำได้ง่ายๆ โดยการเข้าถึงคู่คีย์-ค่าแต่ละรายการ หรืออ้างอิงถึงองค์ประกอบถัดไปตามลำดับ บล็อกนี้ให้รายละเอียดเกี่ยวกับวิธีการทำซ้ำ HashMap ใน Java