Was wird dieses Programm ausgeben?
Neue Position:java.awt.Point[x=12,y=42]
Im Allgemeinen wird eine Konvertierung von einem Typ in einen anderen NICHT automatisch durchgeführt, wenn die Möglichkeit eines Datenverlustes besteht. Eine Konvertierung von einem Datentyp, der N Bits verwendet, in einen Datentyp, der weniger Bits verwendet, läuft Gefahr Daten zu verlieren und wird nicht automatisch durchgeführt. Der Compiler entscheidet, indem er die beteiligten Datentypen untersucht, nicht die darin aktuell enthaltenen Werte.
In den folgenden Situationen wird der Compiler automatisch, in einem Methodenaufruf, den Typ des Ausdrucks in den erforderlichen Typ konvertieren:
"Verlust an Genauigkeit" bedeutet, dass einige Ziffern mit einem niedrigen Stellenwert zu 0 werden, aber die wichtigsten Ziffern und die Größe der Zahl erhalten bleibt.
Erinnert Euch daran, dass ein float
nur eine ungefähre Genauigkeit von 7 dezimalen Stellen hat. Wenn wir zum Beispiel das int
123456789 in ein float
konvertieren, zeigt das Ergebnis 123456792.0 einen Verlust an Genauigkeit.
In den folgenden Situationen wird der Compiler eine Konvertierung NICHT automatisch durchführen.
Klickt in der entsprechenden Spalte auf die Schaltfläche für die folgenden Typumwandlungen. Es gibt nur eine korrekte Antwort pro Zeile.