Java で Long を Int に安全にキャストする方法
long から int へのキャストで情報が失われないことを検証することは、データの損失。以下は推奨されるアプローチです:
Java 8 の toIntExact メソッド
Java 8 では、Math に toIntExact メソッドが導入されました。クラス。このメソッドは、値が範囲外の場合に ArithmeticException をスローすることで、long を int に変換する安全な方法を提供します。
<code class="java">long foo = 10L; int bar = Math.toIntExact(foo);</code>
このアプローチにより、値が表現できない場合に確実に情報を失わずに int として例外がスローされるため、状況を適切に処理できます。
Java 8 のその他のオーバーフロー安全メソッド
に加えてtoIntExact に加えて、Java 8 では、他のいくつかのオーバーフローセーフなメソッドも Math クラスに追加され、すべて exact で終わります。これらのメソッドは、さまざまな算術演算に同様の機能を提供します。
例:
これらの安全なメソッドを利用することで、数値演算を処理する際の潜在的なデータ損失や例外を回避できます。 Java では。
以上が以下に、質問形式を組み込み、記事で取り上げられている中心的な問題に焦点を当てた、タイトルのオプションをいくつか示します。 * Java でデータを失わずに Long を Int に安全にキャストするにはどうすればよいですか? (直接の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。