Wie vergleiche ich zwei Ganzzahlen? [Duplikat
Diese Frage hat hier bereits eine Antwort:
Wie werden zwei Ganzzahlen in Java richtig verglichen? 8 answersIch muss zwei vergleichenInteger
Objekte (nichtint
). Was ist die kanonische Art, sie zu vergleichen?
Integer x = ...
Integer y = ...
Ich kann mir das vorstellen:
if (x == y)
Das==
er @ -Operator vergleicht nur Referenzen, daher funktioniert dies nur für niedrigere ganzzahlige Werte. Aber vielleicht tritt Auto-Boxing ein ...?
if (x.equals(y))
Das sieht nach einer teuren Operation aus. Gibt es Hash-Codes, die auf diese Weise berechnet wurden?
if (x.intValue() == y.intValue())
Ein bisschen wortreich ...
BEARBEITEN Vielen Dank für Ihre Antworten. Obwohl ich jetzt weiß, was zu tun ist, sind die Fakten auf alle vorhandenen Antworten verteilt (auch auf die gelöschten :) und ich weiß nicht wirklich, welche ich akzeptieren soll. Ich akzeptiere also die beste Antwort, die sich auf alle drei Vergleichsmöglichkeiten bezieht, oder zumindest die ersten beiden.