ホームページ > Java > &#&チュートリアル > Java は計算において非常に大きな数値をどのように処理できるのでしょうか?

Java は計算において非常に大きな数値をどのように処理できるのでしょうか?

Linda Hamilton
リリース: 2024-12-30 06:09:09
オリジナル
172 人が閲覧しました

How Can Java Handle Extremely Large Numbers in Calculations?

Java での非常に大きな数値の処理

Java で非常に大きな数値の計算を実行する場合、int や long などのプリミティブ データ型を利用すると、範囲が限られているため十分ではありません。この問題に対処するために、Java は java.math パッケージ内に 2 つのクラスを提供します。整数計算用の BigInteger と 10 進数計算用の BigDecimal です。

BigInteger の使用

整数の場合、 BigInteger クラスを使用すると、任意精度の値の計算が可能になります。 BigInteger を作成するには、そのコンストラクターを使用して、数値を表す String を渡します。

BigInteger reallyBig = new BigInteger("1234567890123456890");
BigInteger notSoBig = new BigInteger("2743561234");
ログイン後にコピー

BigInteger オブジェクトに対して加算、減算、乗算などの演算を実行すると、非常に大きな数値であっても正確な結果が得られます。

reallyBig = reallyBig.add(notSoBig);
ログイン後にコピー

を使用するBigDecimal

10 進数を含む計算の場合、BigDecimal クラスは BigInteger と同様の機能を提供します。 new BigDecimal(String) または new BigDecimal(double) を使用して BigDecimal を初期化できます。

BigDecimal number1 = new BigDecimal("3.14159265358979323846");
BigDecimal number2 = new BigDecimal("2.71828182845904523536");
ログイン後にコピー

BigDecimal オブジェクトに対する加算、減算、乗算、除算などの演算では、精度と精度が維持されます。

使用例

次のことを考慮してください例:

BigInteger number1 = new BigInteger("100000000000000000000");
BigInteger number2 = new BigInteger("1000");

BigInteger result = number1.multiply(number2);

System.out.println(result); // Prints 100000000000000000000000
ログイン後にコピー

この例では、50 桁の精度で 2 つの非常に大きな数値を乗算します。結果は正確であり、さらなる計算に使用できます。

以上がJava は計算において非常に大きな数値をどのように処理できるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート