Java で Long を Int に安全にキャストする: 包括的なソリューション
Java で数値型を扱う場合、キャストが確実に行われるようにすることが重要です操作によってデータが失われることはありません。これは、long の精度が int の精度を超える可能性があるため、long 値を int にキャストする場合に特に重要です。
Java 8: プロセスの簡素化
Java 8 より前、long を int に安全にキャストするには、キャストによって値が変更されていないことを確認するための面倒なチェックが必要でした。ただし、Java 8 の導入により、このプロセスを合理化する新しいメソッドが追加されました。
<code class="java">import static java.lang.Math.toIntExact; long foo = 10L; int bar = toIntExact(foo);</code>
キャストによってオーバーフローが発生する場合、toIntExact メソッドは ArithmeticException をスローし、データの整合性が確実に維持されます。
追加のオーバーフロー セーフ メソッド
Java 8 では、他のいくつかのオーバーフロー セーフ メソッドも導入されました。これらのメソッドはすべて "exact" で終わり、次の機能を提供します:
結論
toIntExact メソッドとその他のオーバーフローを利用することで、 Java 8 で安全なメソッドが追加されたため、開発者はデータの精度を犠牲にすることなく、自信を持って long 値を int にキャストできます。これは、数値計算の整合性を維持し、コードの信頼性を確保するために非常に重要です。
以上がJava で Long を Int に安全にキャストするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。