Warum Java nicht sieht, dass Ganzzahlen gleich sind?

Habe ich ganze zahlen, die sollen gleich sein werden (und ich überprüfe es, indem Sie output). Aber in meinem if Bedingung in Java nicht sehen, wie diese Variablen den gleichen Wert haben.

Ich habe den folgenden code:

if (pay[0]==point[0] && pay[1]==point[1]) {
    game.log.fine(">>>>>> the same");
} else {
    game.log.fine(">>>>>> different");
}
game.log.fine("Compare:" + pay[0] + "," + pay[1] + " -> " + point[0] + "," + point[1]);

Und es produziert die folgende Ausgabe:

FINE: >>>>>> different
FINE: Compare:: 60,145 -> 60,145

Wahrscheinlich muss ich hinzufügen, dass point ist folgendermaßen definiert:

Integer[] point = new Integer[2];

sowie pay uns genommen aus dem loop-Konstruktor:

for (Integer[] pay : payoffs2exchanges.keySet())

So, in diesen zwei Variablen, beide haben den Typ integer.

InformationsquelleAutor der Frage Roman | 2010-12-13

Schreibe einen Kommentar