ทุกสิ่งที่คุณต้องการทราบเกี่ยวกับ Java Hashcode



ในบทความนี้เราจะทำความเข้าใจกับ Java hashcode โดยละเอียดและใช้โปรแกรมตัวอย่างเพื่อทำความเข้าใจแนวคิดได้ดีขึ้น

HashMaps และ HashSets ใช้เพื่อจัดการข้อมูลและทำได้ด้วยความช่วยเหลือของการแฮช วิธีการข้างต้นใช้วิธี hashCode () เพื่อตรวจสอบและยืนยันค่าแฮช การใช้ hashCode () ในคลาส Object จะให้จำนวนเต็มที่แตกต่างกันสำหรับอ็อบเจ็กต์ มีหลายครั้งที่เราอาจต้องใช้วิธีการ hashCode ในโปรแกรมของเรา ในบทความนี้เราจะเข้าใจรายละเอียดของ Java hashcode

บทความนี้มุ่งเน้นไปที่คำแนะนำต่อไปนี้





ดังนั้นให้เราเริ่มต้นด้วยหัวข้อแรกของบทความ Java Hashcode

Java HashCode คืออะไร?

ส่งคืนค่าแฮชโค้ดเป็นจำนวนเต็ม ค่า Hashcode ส่วนใหญ่จะใช้ในคอลเลกชันที่ใช้การแฮชเช่น HashMap, HashSet, HashTable และ hellip.etc เมธอดนี้ต้องถูกแทนที่ในทุกคลาสซึ่งจะแทนที่เมธอดเท่ากับ ()



สัญญาทั่วไปของ hashCode () วิธีการคือ:

  • การเรียกใช้ hashCode () หลายครั้งควรส่งคืนค่าจำนวนเต็มเดียวกันเว้นแต่คุณสมบัติของอ็อบเจ็กต์จะถูกแก้ไขที่ใช้ในเมธอด equals ()
  • ค่ารหัสแฮชของออบเจ็กต์สามารถเปลี่ยนแปลงได้ในการดำเนินการหลายครั้งของแอปพลิเคชันเดียวกัน
  • หากวัตถุสองชิ้นมีค่าเท่ากันตามวิธีการเท่ากับ () รหัสแฮชจะต้องเหมือนกัน
  • หากวัตถุสองชิ้นไม่เท่ากันตามวิธีการเท่ากับ () รหัสแฮชไม่จำเป็นต้องแตกต่างกัน ค่าแฮชโค้ดของพวกเขาอาจจะเท่ากันหรือไม่ก็ได้

ให้เราดูโค้ดตัวอย่างเพื่อทำความเข้าใจแนวคิดให้ดีขึ้นอย่างไรก็ตามฉันขอแนะนำให้เริ่มต้นด้วย การติดตั้ง Java ,

โค้ดตัวอย่างสำหรับ Java Hashcode

int สาธารณะ hashCode ()

// วิธีนี้ส่งคืนค่ารหัสแฮช



// สำหรับวัตถุที่เรียกใช้เมธอดนี้.

ตัวอย่าง

พนักงานระดับสาธารณะ {protected long staffId protected String firstName protected String lastName public int hashCode () {return (int) staffId}}

สังเกตว่าถ้าสองพนักงานวัตถุมีค่าเท่ากันก็จะมีรหัสแฮชเหมือนกัน แต่อย่างที่เห็นได้ง่ายในตัวอย่างคือ 2พนักงานวัตถุอาจไม่เท่ากันและยังคงมีรหัสแฮชเหมือนกัน เอาล่ะเราได้สำรวจแนวคิดนี้เรียบร้อยแล้ว

ถ้าคำสั่งในแบบสอบถาม sql

ดังนั้นเราจึงมาถึงตอนท้ายของบทความนี้ใน 'Java Hashcode' หากคุณต้องการเรียนรู้เพิ่มเติมตรวจสอบไฟล์ โดย Edureka บริษัท การเรียนรู้ออนไลน์ที่เชื่อถือได้ หลักสูตรการฝึกอบรมและการรับรอง Java J2EE และ SOA ของ Edureka ได้รับการออกแบบมาเพื่อฝึกอบรมคุณสำหรับแนวคิด Java ทั้งหลักและขั้นสูงพร้อมกับกรอบงาน Java ต่างๆเช่น Hibernate & Spring

มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นของบทความนี้และเราจะติดต่อกลับโดยเร็วที่สุด