Java-objekti hashCode ()

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 . ObjectKlass 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 Stringja ArrayListobjekti räsikoodi saamiseks helistada .

Sellepärast, et klass Stringja ArrayListklass 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.

Huvitavad Artiklid...