ความเท่าเทียมกันของ HashCode ไม่ได้หมายความว่าจะคืนค่าเท่ากับ จริง สัญญาคือว่า อ็อบเจ็กต์ที่เท่ากันต้องมีแฮชโค้ดเดียวกัน แต่ไม่ได้ระบุว่าทั้งสองวัตถุที่มี HashCode เดียวกันจะต้องเท่ากัน
วิธีเท่ากับใช้ hashCode หรือไม่
เมื่อเราพูดถึงวิธีเท่ากับ จุดประสงค์หลักคือ เพื่อเปรียบเทียบสถานะของวัตถุสองชิ้นหรือเนื้อหาของวัตถุ.
เท่ากับใช้ hashCode C หรือไม่
เป็นเพราะ เฟรมเวิร์กต้องการให้สองอ็อบเจ็กต์ที่เหมือนกันต้องมีแฮชโค้ดเหมือนกัน หากคุณลบล้างเมธอดเท่ากับเพื่อทำการเปรียบเทียบพิเศษของสองอ็อบเจ็กต์ และทั้งสองอ็อบเจ็กต์ถือว่าเหมือนกันโดยเมธอด โค้ดแฮชของทั้งสองอ็อบเจ็กต์จะต้องเหมือนกัน
hashCode และเท่ากับใช้สำหรับอะไร
วิธีแฮชโค้ดส่งคืน ค่าแฮชเดียวกันเมื่อเรียกบนวัตถุสองชิ้น ซึ่งเท่ากันตามวิธีเท่ากับ และหากวัตถุไม่เท่ากันก็มักจะคืนค่าแฮชที่แตกต่างกัน
HashMap ใช้ hashCode หรือเท่ากับหรือไม่
คุณสามารถแทนที่สิ่งนี้ในชั้นเรียนของคุณเพื่อจัดเตรียมการใช้งานของคุณเอง HashMap ใช้ equals เพื่อเปรียบเทียบคีย์ว่าค่าเท่ากันหรือไม่ หากวิธีเท่ากับคืนค่าจริงพวกเขาจะเท่ากันไม่เท่ากัน ที่ฝากข้อมูลเดียวสามารถมีได้มากกว่าหนึ่งโหนด ขึ้นอยู่กับวิธี hashCode