Typumwandlung von int<-->double

canyakan95

Bekanntes Mitglied
Hallo
ich hatte heute in der uni eine aufgabe wo ich nach fehlern suchen sollte , ob die typ-umwandlung richtig gemacht wurde.

leider hatte ich bei diesen hier probleme und hoffe ihr könnt mir erklären , wie man am besten herausfindet ,ob es richtig umgewandelt wurde oder nicht. am besten bitte regeln oder so.

Aufgabe : Richtig oder Falsch
1) int x = (double) 5.0; (Soll falsch sein ,aber warum?)
2) double x = (int ) 5.0; (Soll richtig sein, aber warum?)

Mit freundlichen Grüßen
 

InfectedBytes

Top Contributor
überleg dir doch einfach mal, was die Datentypen bedeuten.
int kann ganze Zahlen speichern
double kann kommazahlen speichern.
Ganz offensichtlich kann man jede ganze Zahl auch durch eine Kommazahl darstellen. Umgekehrt geht das natürlich nicht
 

Moritz_1234

Mitglied
Eigentlich macht es keinen Sinn, ein Double in einen Integer umzuwandeln, oder umgekehrt.
Du weißt ja wohin du hinauswillst: Wenn deine Variable sich im laufe des Codes irgendwann besser als Dezimalzahl erweißen könnte, nimmst du Double. Ein Double kann aber auch einfach ein Integer sein.
Wenn du weißt, dass diese Variable in keinem Fall irgendwann im Quellcode eine Dezimalzahl sein wird, dann nimmst du einfach Integer.

Wenn du dann doch später merken solltest, dass dein Integer doch besser ein Double sein sollte, dann vergiss das Umwandeln, sondern schreibe einfach in die Definition der Variable
Code:
int i;
zu
Code:
double i;

Viele Grüße
Moritz :)
 

Ähnliche Java Themen

Neue Themen


Oben