Dupplikate aus Collections entfernen

Hallo!

Code:
System.out.println((new Float(8.0)).equals(new Integer(8)));
Ein Float ist nun mal auch kein Integer... ;-)

Code:
System.out.println(((int)8.0f) == 8); //=true

Hier castest du ja auch explizit auf einen int ....

Ganzahlige Literale werden in java immer implizit als int Behandelt.

Gruß Tom
 
Der Cast war nur deshalb erforderlich, da ich sonst float mit float vergleichen würde.

Ich war nur überrascht, da der Inhalt der Objekte ja jedesmal 8 ist. Soweit ich weiß wird mit "equals" die inhaltliche Gleichheit verglichen:

Code:
String s1 = "8";
String s2 = new String("8");
s1.equals(s2); //= true
s1 == s2; //= false

Ich weiß, "8"=="8" wäre auch true, das liegt aber an der internen Speicherung von Strings in Java.
 
Zurück