Java Object hashCode ()

Η μέθοδος Java Object hashCode () επιστρέφει την τιμή κωδικού κατακερματισμού που σχετίζεται με το αντικείμενο.

Η σύνταξη της hashCode()μεθόδου είναι:

 object.hashCode()

Παράμετροι hashCode ()

Η hashCode()μέθοδος δεν λαμβάνει παραμέτρους.

hashCode () Επιστροφές τιμών

  • επιστρέφει την τιμή κωδικού κατακερματισμού του αντικειμένου

Σημείωση : Η τιμή κωδικού κατακερματισμού είναι μια ακέραια τιμή που σχετίζεται με κάθε αντικείμενο. Χρησιμοποιείται για τον προσδιορισμό της θέσης των αντικειμένων στον πίνακα κατακερματισμού.

Παράδειγμα 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 ) )

Σημείωση : Το Objectμάθημα είναι το super class για όλες τις τάξεις της Java. Ως εκ τούτου, κάθε τάξη μπορεί να εφαρμόσει τη hashCode()μέθοδο.

Παράδειγμα 2: hashCode () με String και 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 ) )

Στο παραπάνω παράδειγμα, μπορούμε να καλέσουμε τη hashCode()μέθοδο για να λάβουμε τον κωδικό κατακερματισμού του αντικειμένου Stringκαι ArrayList.

Είναι επειδή η τάξη Stringκαι η ArrayListτάξη κληρονομούν την Objectτάξη.

Παράδειγμα 3: Τιμή κωδικού κατακερματισμού για ίσο αντικείμενο

 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 ) )

Στο παραπάνω παράδειγμα, μπορούμε να δούμε ότι δύο αντικείμενα obj1 και obj2 δημιουργούν την ίδια τιμή κωδικού κατακερματισμού.

Είναι επειδή δύο αντικείμενα είναι ίδια. Και, σύμφωνα με την επίσημη τεκμηρίωση Java, δύο ίσα αντικείμενα πρέπει πάντα να επιστρέφουν την ίδια τιμή κωδικού κατακερματισμού.

Σημείωση : Χρησιμοποιήσαμε τη μέθοδο Java Object Equals () για να ελέγξουμε εάν δύο αντικείμενα είναι ίδια.

ενδιαφέροντα άρθρα...