Heim  >  Artikel  >  Java  >  Wie kann ich in Java sicher Long in Int umwandeln?

Wie kann ich in Java sicher Long in Int umwandeln?

DDD
DDDOriginal
2024-10-26 13:58:02357Durchsuche

How Can I Safely Cast Long to Int in Java?

Sicheres Umwandeln von Long in Int in Java: Eine umfassende Lösung

Bei der Arbeit mit numerischen Typen in Java ist es wichtig, das Umwandeln sicherzustellen Vorgänge führen nicht zu Datenverlust. Dies ist besonders wichtig, wenn Long-Werte in int umgewandelt werden, da die Genauigkeit von long die von int übertreffen kann.

Java 8: Vereinfachung des Prozesses

Vor Java 8 , erforderte die sichere Umwandlung von long in int eine mühsame Überprüfung, um sicherzustellen, dass die Umwandlung den Wert nicht veränderte. Mit der Einführung von Java 8 wurde jedoch eine neue Methode hinzugefügt, die diesen Prozess rationalisiert:

<code class="java">import static java.lang.Math.toIntExact;

long foo = 10L;
int bar = toIntExact(foo);</code>

Die toIntExact-Methode löst eine ArithmeticException aus, wenn die Umwandlung zu einem Überlauf führen würde, wodurch sichergestellt wird, dass die Datenintegrität gewahrt bleibt.

Zusätzliche überlaufsichere Methoden

Java 8 führte auch mehrere andere überlaufsichere Methoden ein. Diese Methoden enden alle mit „exact“ und bieten die folgende Funktionalität:

  • Math.incrementExact(long): Erhöht einen Long-Wert um eins.
  • Math.subtractExact(long, long ): Subtrahiert einen Long-Wert von einem anderen.
  • Math.decrementExact(long): Dekrementiert einen Long-Wert um eins.
  • Math.negateExact(long): Negiert einen Long-Wert.
  • Math.subtractExact(int, int): Subtrahiert einen int-Wert von einem anderen.

Fazit

Durch die Verwendung der toIntExact-Methode und anderer Überlauf- Dank der in Java 8 hinzugefügten sicheren Methoden können Entwickler problemlos lange Werte in int umwandeln, ohne die Datengenauigkeit zu beeinträchtigen. Dies ist entscheidend für die Aufrechterhaltung der Integrität numerischer Berechnungen und die Gewährleistung der Zuverlässigkeit des Codes.

Das obige ist der detaillierte Inhalt vonWie kann ich in Java sicher Long in Int umwandeln?. 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