Informatik
Buchtipp
Dreamweaver 4
J. Kilian
49.95 €

Buchcover

Anzeige
Stichwortwolke
forum

Zurück   ChemieOnline Forum > Naturwissenschaften > Informatik

Hinweise

Informatik Programmiersprachen, Softwareentwicklung.

Anzeige

Antwort
 
Themen-Optionen Ansicht
Alt 10.04.2015, 11:05   #1   Druckbare Version zeigen
icer123 Männlich
Mitglied
Themenersteller
Beiträge: 20
explizite implizite Typumwandlung Verständnisproblem

Hallo,
ich versuche seit einigen Tagen mir programmieren in Java selbst beizubringen und habe leider ein kleines Verständisproblem bezüglich der impliziten, expliziten Typumwandlung.

Wenn ich zum Beispiel eine Variable vom Typ short initialisiere
[ short shortWert = 120; ] Dann wird der zugewiesene ganzzahlige Wert 120 zunächst doch immer als Integer gelesen und geprüft, ob dieser auch in den Wertebereich des Integers passt. Anschließend erfolgt die Prüfung ob der Wert 120 auch in den Wertebereich von short passt. Liegt der Wert in dessen Wertebereich gibt es keine Fehlermeldung bei der initialisierung.

Möchte ich jedoch den Wert der eben initialisierten Variable shortWert einer Variablen vom Typ byte zuweisen so kommt eine Fehlermeldung.
[ byte byteWert = shortWert; ]

Ich verstehe jetzt nicht so ganz warum bei der Initialisierung von
[ short shortWert = 120; ] nach dem der Wert als Integer gelesen wurde der Wert automatisch dem niedrigeren Datentyp short zugewiesen werden konnte

Im Grunde müsste das ja auch eine expliziter Typumwandlung sein
( Integer -> short)

Denn bei [ byte byteWert = shortWert; ] geht die Zuweisung nur mit den Cast-Operator [ byte byteWert = (byte) shortWert] obwohl der Wert von (shortWert) in den Wertebereich des Datentyps byte passt.

Ich hoffe ich konnte mein Problem irgendwie darstellen
Über einen Tipp würde ich mich sehr freuen.

Vielen Dank
icer123 ist offline   Mit Zitat antworten
Alt 10.04.2015, 11:34   #2   Druckbare Version zeigen
ernest  
Mitglied
Beiträge: 491
AW: explizite implizite Typumwandlung Verständnisproblem

Wir die Zahl vom Compiler aus dem Quelltext direkt eingelesen kann dieser direkt die Prüfung auf den Wertebereich durchführen.
Weist du allerdings den Wert einer Variablen zu ist der übliche Vorgang eben NICHT diesen Wert wieder einer anderen Variable mit kleinerem Werteberich zuzuweisen, sondern irgendwelche Operationen durchzuführen und erst danach eventuell eine Zuweisung auf einen "kleineren" Datentyp durchzuführen. Da je nach Operation (Multiplikation mit einer Zufallszahl, einer eingelesenen Zahl,...) der Zahlenwert nun eventuell nicht mehr im Wertebereich deiner Zuweisung liegt weist dich der Compiler darauf hin das du hier etwas machst das eventuell nicht funktioniert (Im anderen Fall WEIß der Compiler sicher ob es funktioniert).
ernest ist offline   Mit Zitat antworten
Anzeige
Anzeige


Antwort

Stichworte
explizit, implizit, java, typumwandlung

Themen-Optionen
Ansicht

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Implizite Differentiation chemie-held Differenzial- und Integralrechnung
inkl. Kurvendiskussion
2 06.04.2012 14:33
Implizite Funktion... Klerk91 Differenzial- und Integralrechnung
inkl. Kurvendiskussion
5 08.08.2010 17:15
implizite Ableitung Haimi Differenzial- und Integralrechnung
inkl. Kurvendiskussion
8 03.11.2009 15:02
Implizite Differentiation xMurphyx Differenzial- und Integralrechnung
inkl. Kurvendiskussion
1 05.05.2009 18:26
Implizite Differtiation Bau-Ing Differenzial- und Integralrechnung
inkl. Kurvendiskussion
9 09.03.2006 14:49


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:43 Uhr.



Anzeige