2
respuestas

[Duda] Porque me da un ID diferente cada vez que imprimo mi cuente y cliente??????

Hola Vieras que noté qué si yo doy un

System.out.println(cliente); Y un System.out.println(cuenta);

Me dá respectivamente : Cliente@4617c264 Cuenta@36baf30c

Pero cuenta imprimo System.out.println(cuenta); solo esto me cambia el id al qué me dio para cliente!!! Osea: Cuenta@4617c264

Me podrían explicar porque??

Gracias :)

2 respuestas

¡Hola Mariel, espero que estés bien!

Entiendo tu confusión. Lo que estás viendo son los identificadores únicos de los objetos en Java, conocidos como "hash codes". Estos identificadores son generados automáticamente por Java y pueden cambiar cada vez que ejecutas el programa.

El método hashCode() en Java se utiliza para obtener un valor entero único que representa el objeto. El propósito principal del método hashCode() es permitir el uso eficiente de estructuras de datos como HashMap, HashSet y otros que se basan en la búsqueda y comparación de objetos.

En cuanto a tu pregunta, si dos objetos tienen una relación entre ellos, es posible que sus valores de hashCode() sean iguales, pero no necesariamente lo serán siempre. El hecho de que dos objetos tengan una relación entre sí no garantiza que sus códigos hash sean idénticos. El cálculo del código hash depende de la implementación del método hashCode() en cada clase.

Espero que esto aclare tu duda. Si tienes alguna otra pregunta, estaré encantado de ayudarte. ¡Espero haber ayudado y buenos estudios!

No entendí muy bien pero Gracias, es que soy principiante y antes de este curso no sabía nada de Programación :)