Heim >Java >javaLernprogramm >Warum sind ganzzahlige Literale wie 08 in Java ungültig?

Warum sind ganzzahlige Literale wie 08 in Java ungültig?

Susan Sarandon
Susan SarandonOriginal
2024-12-04 09:22:15692Durchsuche

Why Are Integer Literals Like 08 Invalid in Java?

Java-Ganzzahlliterale: Warum ist 08 ungültig?

In Java stellen Ganzzahlliterale, die als Folge von Dezimalstellen geschrieben sind, eine Dezimalzahl (Basis) dar 10) Wert. Wenn umgekehrt ein ganzzahliges Literal mit der Ziffer 0 beginnt, wird es als oktale Größe (Basis 8) interpretiert.

Ausnahme für kleine ganze Zahlen

Für einstellige Zahlen Bei Zahlen ist die Oktalinterpretation mit der Dezimalinterpretation identisch, mit Ausnahme der Werte 08 und 09. Daher bemerken Sie möglicherweise nicht, dass diese Zahlen als behandelt werden Zunächst oktal.

Verwechslung mit mehrstelligen Zahlen

Wenn ein ganzzahliges Literal jedoch mehrere Ziffern hat, kann die oktale Interpretation zu unerwarteten Ergebnissen führen. Zum Beispiel:

  • 010 steht für 8 im Oktalformat, nicht für 10 im Dezimalformat
  • 024 steht für 20 im Oktalformat, nicht für 24 im Dezimalformat

Vermeiden Sie führende Nullen

Um Klarheit zu gewährleisten und zu vermeiden Um Verwirrung zu vermeiden, wird empfohlen, ein Präfix für Oktalliterale zu verwenden, z. B. 0o (z. B. 0o10), oder einfach zu vermeiden, ein ganzzahliges Literal mit der Ziffer 0 zu beginnen, es sei denn, Sie beabsichtigen, Null selbst zu schreiben.

Das obige ist der detaillierte Inhalt vonWarum sind ganzzahlige Literale wie 08 in Java ungültig?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn