Metoden Java Object hashCode () returnerer den hashkodeværdi, der er knyttet til objektet.
Metodens syntaks hashCode()
er:
object.hashCode()
hashCode () Parametre
Den hashCode()
metode tager ikke nogen parametre.
hashCode () Returværdier
- returnerer hashkodeværdien for objektet
Bemærk : Hashkodeværdien er et heltal, der er knyttet til hvert objekt. Det bruges til at identificere placeringen af objekter i hash-tabellen.
Eksempel 1: Java Object 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 ) )
Bemærk : Object
Klassen er superklassen for alle klasser i Java. Derfor kan hver klasse implementere hashCode()
metoden.
Eksempel 2: hashCode () med String og 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 ) )
I ovenstående eksempel kan vi kalde hashCode()
metoden for at få hash-koden til String
og ArrayList
objektet.
Det er fordi den String
og ArrayList
klasse arver Object
klassen.
Eksempel 3: Hash-kodeværdi for lig med objekt
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 ) )
I ovenstående eksempel kan vi se, at to objekter obj1 og obj2 genererer den samme hash-kodeværdi.
Det er fordi to objekter er ens. Og ifølge officiel Java-dokumentation skal to lige store objekter altid returnere den samme hash-kodeværdi.
Bemærk : Vi har brugt metoden Java Object equals () til at kontrollere, om to objekter er ens.