A Java Object hashCode () metódus az objektumhoz társított kivonatkód értéket adja vissza.
A hashCode()
módszer szintaxisa :
object.hashCode()
hashCode () paraméterek
A hashCode()
módszer nem vesz fel paramétereket.
hashCode () Visszaadási értékek
- az objektum hash kódértékét adja vissza
Megjegyzés : A kivonatkód értéke minden objektumhoz társított egész szám. Az objektumok helyének azonosítására szolgál a kivonat táblában.
1. példa: Java objektum 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 ) )
Megjegyzés : Az Object
osztály a Java összes osztályának szuper osztálya. Ezért minden osztály megvalósíthatja a hashCode()
módszert.
2. példa: hashCode () a String és az ArrayList használatával
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 ) )
A fenti példában meghívhatjuk a hashCode()
metódust az String
és ArrayList
objektum hash kódjának megszerzésére .
Azért, mert az String
és ArrayList
osztály örökli az Object
osztályt.
3. példa: Hash Code értéke egyenlő objektumhoz
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 ) )
A fenti példában láthatjuk, hogy két obj1 és obj2 objektum ugyanazt a kivonatkódot generálja.
Ez azért van, mert két objektum egyenlő. És a hivatalos Java dokumentáció szerint két egyenlő objektumnak mindig ugyanazt a hash kód értéket kell visszaadnia.
Megjegyzés : A Java Object equals () metódust használtuk annak ellenőrzésére, hogy két objektum egyenlő-e.