Java で 10 進精度で浮動小数点数をフォーマットするにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-03 22:24:03
オリジナル
929 人が閲覧しました

How to Format Floats with Decimal Precision in Java?

小数精度での浮動小数点の書式設定

浮動小数点数を特定の小数桁数に書式設定することは、さまざまなプログラミング シナリオで一般的なタスクです。これを実現するために、広く使用されているアプローチの 1 つは、Java の BigDecimal クラスを利用することです。ただし、予期される戻り値の型が float の場合、BigDecimal を使用すると不正な結果が生じる可能性があります。

指定されたコード例では:

<code class="java">public static float Redondear(float pNumero, int pCantidadDecimales) {
    // the function is call with the values Redondear(625.3f, 2)
    BigDecimal value = new BigDecimal(pNumero);
    value = value.setScale(pCantidadDecimales, RoundingMode.HALF_EVEN); // here the value is correct (625.30)
    return value.floatValue(); // but here the values is 625.3
}</code>
ログイン後にコピー

この問題は、BigDecimal 値を変換して元の値に戻すときに発生します。フロート。この目的のために、次のように String.format メソッドを使用することをお勧めします。

String.format("%.2f", floatValue);
ログイン後にコピー

書式指定子 (%.2f) 内で希望の小数点以下の桁数を指定することで、書式設定された文字列を取得できます。指定された精度での float 値の表現。この場合、戻り値の型は String であることに注意してください。

以上がJava で 10 進精度で浮動小数点数をフォーマットするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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