Doppel ist nicht die Umwandlung in eine int
Diesem code, den ich geschrieben habe, zu konvertieren double
in int
immer eine Ausnahme.
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Cannot cast from Double to int
Dies ist mein code
Double d = 10.9;
int i = (int)(d);
Du musst angemeldet sein, um einen Kommentar abzugeben.
Double
ist ein wrapper Klasse auf der Oberseite des primitivendouble
. Es kann geworfen werden, umdouble
, aber es kann nicht gewirkt werden, umint
direkt.Wenn Sie
double
stattDouble
es wird kompiliert:Können Sie auch hinzufügen, eine Besetzung zu
double
in der Mitte, so wie hier:thats, weil Sie Sie nicht mischen unboxing (Umwandlung Ihrer
Double
zu einem Doppel -primitive
) und Gießen.versuchen
convertig
.n
fehlt.Diese
ist Ihr Fehler. Sie sind mit wrapper-Klassen anstelle von Datentypen. Verwenden
Können Sie nicht gegossen wrapper wie Double primitiven Typ wie int direkt.
Können Sie versuchen, diese -
int i = (int)((double)d);
Für mehr überprüfen Sie folgende link -
http://docs.oracle.com/javase/specs/jls/se7/html/jls-5.html
You can not cast wrapper like Double to primitive type like int directly.
Nicht immer(double) new Integer(5);
funktionieren würde.