Java-objekti meetod hashCode () tagastab objektiga seotud räsikoodi väärtuse.
Meetodi süntaks hashCode()
on:
object.hashCode()
hashCode () parameetrid
hashCode()
Meetod ei võta parameetrid.
hashCode () Tagastab väärtused
- tagastab objekti räsikoodi väärtuse
Märkus . Räsi koodi väärtus on iga objektiga seotud täisarv. Seda kasutatakse objektide asukoha tuvastamiseks räsitabelis.
Näide 1: Java-objekti hashCode ()
class Main ( public static void main(String() args) ( // hashCode() with Object Object obj1 = new Object(); System.out.println(obj1.hashCode()); // 1785210046 Object obj2 = new Object(); System.out.println(obj2.hashCode()); // 1552787810 Object obj3 = new Object(); System.out.println(obj3.hashCode()); // 1361960727 ) )
Märkus . Object
Klass on kõigi Java klasside superklass. Seega saab iga klass hashCode()
meetodit rakendada .
Näide 2: hashCode () koos stringiga ja ArrayList
import java.util.ArrayList; class Main ( public static void main(String() args) ( // hashCode() with String String str = new String(); System.out.println(str.hashCode()); // 0 ArrayList list = new ArrayList(); System.out.println(list.hashCode()); // 1 ) )
Ülaltoodud näites võime hashCode()
meetodi String
ja ArrayList
objekti räsikoodi saamiseks helistada .
Sellepärast, et klass String
ja ArrayList
klass pärivad Object
.
Näide 3: Objekti Võrdne räsikood väärtus
class Main ( public static void main(String() args) ( // hashCode() with Object Object obj1 = new Object(); // assign obj1 to obj2 Object obj2 = obj1; // check if two objects are equal System.out.println(obj1.equals(obj2)); // true // get hashcode of obj1 and obj2 System.out.println(obj1.hashCode()); // 1785210046 System.out.println(obj2.hashCode()); // 1785210046 ) )
Ülaltoodud näites näeme, et kaks objekti obj1 ja obj2 genereerivad sama räsikoodi väärtust.
Sellepärast, et kaks objekti on võrdsed. Ja vastavalt ametlikule Java dokumentatsioonile peaksid kaks võrdset objekti tagastama alati sama räsikoodi väärtuse.
Märkus : Oleme kasutanud Java Object equals () meetodit, et kontrollida, kas kaks objekti on võrdsed.