Método hashCode() de Java Object

Java String类Clase Java Object


El método hashCode() de Object se utiliza para obtener el valor hash del objeto.

Sintaxis

object.hashCode()

Parámetros

  • Ninguno 。

Valor de retorno

Devuelve el valor hash del objeto, que es un entero que representa la posición en la tabla hash.

Ejemplo

El siguiente ejemplo demuestra el uso del método hashCode():

Ejemplo

class EjemploTest { public static void main(String[] args) { //Object usa hashCode() Object obj1 = new Object(); System.out.println(obj1.hashCode()); Object obj2 = new Object(); System.out.println(obj2.hashCode()); Object obj3 = new Object(); System.out.println(obj3.hashCode()); } }

El resultado de ejecución del programa anterior es:

225534817
1878246837
929338653

Las clases String y ArrayList usan el método hashCode(). Tanto String como ArrayList heredan de Object, por lo que pueden usar directamente el método hashCode():

Ejemplo

import java.util.ArrayList; class EjemploTest { public static void main(String[] args) { //String usa hashCode() String str = new String(); System.out.println(str.hashCode()); // 0 //ArrayList usa hashCode() ArrayList<Integer> list = new ArrayList<>(); System.out.println(list.hashCode()); // 1 } }

El resultado de ejecución del programa anterior es:

0
1

El siguiente ejemplo demuestra que si dos objetos son iguales, sus valores hash también son iguales:

Ejemplo

class EjemploTest { public static void main(String[] args) { //Object usa hashCode() Object obj1 = new Object(); //Asignar obj1 a obj2 Object obj2 = obj1; //Comprobar si dos objetos son iguales System.out.println(obj1.equals(obj2)); // true //Obtener los valores hash de obj1 y obj2 System.out.println(obj1.hashCode()); // 225534817 System.out.println(obj2.hashCode()); // 225534817 } }

El resultado de ejecución del programa anterior es:

true
225534817
225534817

Java String类Clase Java Object

Otras extensiones