Hallo Leute!
Ich bin etwas verwirrt, was die Vergleiche mit equals, hashCode() und == anbelangt. Es geht mir hierbei, um das theoretische Verständnis. Angenommen werden soll, dass Equals und HashCode() selbstverständlich überschrieben werden, damit der Vergleich auch richtig funktioniert. Ich will hier nur mal wissen, ob meine Überlegungen richtig sind oder was ihr zu den einzelnen Fällen zu sagen habt.
Hier mal meine Überlegungen dazu:
1. wenn Vergleich mit == true ergibt, kann Vergleich mit HashCode() true oder false ergeben
2. wenn Vergleich mit == false ergibt, kann Vergleich mit HashCode() true opder false ergeben
3. wenn Vergleich mit HashCode() true ergibt, kann Vergleich mit Equals() true oder false sein
4. wenn Vergleich mit HashCode() false ergibt, kann Vergleich mit == true oder false sein
Ich hoffe, ihr könnt mir da ein wenig helfen und mir sagen, ob meine 4 Überlegungen der Wahrheit entsprechen oder ob ich da einen Fehler habe.
Danke im Voraus für Eure Antworten!!!
Ich bin etwas verwirrt, was die Vergleiche mit equals, hashCode() und == anbelangt. Es geht mir hierbei, um das theoretische Verständnis. Angenommen werden soll, dass Equals und HashCode() selbstverständlich überschrieben werden, damit der Vergleich auch richtig funktioniert. Ich will hier nur mal wissen, ob meine Überlegungen richtig sind oder was ihr zu den einzelnen Fällen zu sagen habt.
Hier mal meine Überlegungen dazu:
1. wenn Vergleich mit == true ergibt, kann Vergleich mit HashCode() true oder false ergeben
2. wenn Vergleich mit == false ergibt, kann Vergleich mit HashCode() true opder false ergeben
3. wenn Vergleich mit HashCode() true ergibt, kann Vergleich mit Equals() true oder false sein
4. wenn Vergleich mit HashCode() false ergibt, kann Vergleich mit == true oder false sein
Ich hoffe, ihr könnt mir da ein wenig helfen und mir sagen, ob meine 4 Überlegungen der Wahrheit entsprechen oder ob ich da einen Fehler habe.
Danke im Voraus für Eure Antworten!!!