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Класът е супер клас за всички класове в 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: Стойност на хеш код за обект Equals

 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 (), за да проверим дали два обекта са равни.

Интересни статии...