Heim  >  Artikel  >  Java  >  Warum wirft Java beim Zuweisen zu einer langen Variablen „Das Literal xyz des Typs int liegt außerhalb des Bereichs“ aus?

Warum wirft Java beim Zuweisen zu einer langen Variablen „Das Literal xyz des Typs int liegt außerhalb des Bereichs“ aus?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-01 05:41:27877Durchsuche

Why Does Java Throw

Behebung von „Das Literal xyz von Type int liegt außerhalb des Bereichs“

Bei der Arbeit mit Datentypen in Java ist es wichtig, deren zu verstehen Wertebereiche. Es kann jedoch vorkommen, dass Sie auf die Fehlermeldung „Das Literal xyz vom Typ int liegt außerhalb des gültigen Bereichs“ stoßen, selbst wenn Sie einer langen Variablen einen Wert zuweisen.

Um dieses Problem zu beheben, müssen Sie den Typ explizit angeben der Wert. In Java können ganzzahlige Werte bis zu 2^31-1 durch int dargestellt werden, während größere Werte long erfordern. Allerdings interpretiert Java numerische Literale implizit als int, sofern nicht ausdrücklich anders angegeben.

In Ihrem Fall weist der Code einer langen Variablen namens testLong einen Wert größer als 2^63-1 zu. Da das Literal 9223372036854775807 den Bereich von int überschreitet, interpretiert der Compiler es als solches, was zu dem Fehler führt.

Um dies zu beheben, hängen Sie einfach ein großes L an das Ende des numerischen Literals, um anzuzeigen, dass es a darstellt langer Wert:

<code class="java">long testLong = 9223372036854775807L;</code>

Durch die explizite Angabe des Typs des Literals stellen Sie sicher, dass der Compiler es korrekt dem entsprechenden Datentyp zuordnet. Diese Vorgehensweise ist besonders wichtig, wenn Sie mit Literalen arbeiten, die nahe an den Maximal- oder Minimalwerten eines Datentyps liegen, um mögliche Fehler zu vermeiden.

Das obige ist der detaillierte Inhalt vonWarum wirft Java beim Zuweisen zu einer langen Variablen „Das Literal xyz des Typs int liegt außerhalb des Bereichs“ aus?. 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