Er der en måde at omdanne java.lang.Double
til java.lang.Integer
?
Det giver en undtagelse
"java.lang.ClassCastException: java.lang.Double inkompatibel med java.lang.Integer"
En Double
er ikke et Integer
, så casten virker ikke. Bemærk forskellen mellem Double
klasse og double
primitiv. Bemærk også, at en Double
er et Number
, så den har metoden intValue
, som du kan bruge til at få værdien som et primitivt int
.
Double og Integer er wrapper-klasser for Java-princitiver for henholdsvis double og int. Du kan lave en cast mellem dem, men du mister det flydende komma. Det vil sige, at 5,4 castet til en int vil være 5. Hvis du caster det tilbage, vil det være 5,0.