ホームページ  >  記事  >  Java  >  Javaで小数点を保持する方法

Javaで小数点を保持する方法

尚
オリジナル
2019-11-19 14:00:444562ブラウズ

Javaで小数点を保持する方法

Java の研究では、アルゴリズムの 1 つに Java に属する小数点保持機能がよく使用されます。大きく分けて4つの方法があります。

Java で小数を保持する例:

/**
 * 1.BigDecimal常用于金额的计算,
 * 超过16位使用
 */
public void m1() {

    BigDecimal bg = new BigDecimal(f);
    double f1 = bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
    System.out.println(f1);
}

/**
 * 2.DecimalFormat转换最简便
 * 用于格式化十进制数字
 * 常用
 */
public void m2() {
    DecimalFormat df = new DecimalFormat("#.00");
    System.out.println(df.format(f));
}

/**
 * 3.String.format打印最简便
 * 常用
 */
public void m3() {
    System.out.println(String.format("%.2f", f));

}


/**
 * 4.NumberFormat
 *  是所有数值格式的抽象基类。
 */
public void m4() {
    NumberFormat nf = NumberFormat.getNumberInstance();
    nf.setMaximumFractionDigits(2);
    System.out.println(nf.format(f));
}


public static void main(String[] args) {
    java_01 f = new java_01();
    f.m1();
    f.m2();
    f.m3();
    f.m4();
}
输出结果:自动四舍五入:
123456.79
123456.79
123456.79
123,456.79

Java で小数を保持する 4 つの方法の紹介:

1、BigDecimal

金額の計算に一般的に使用され、16 桁を超える場合に使用されます。

Java の java.math パッケージで提供される API クラス BigDecimal は、16 桁を超える数値に対して正確な演算を実行するために使用されます。有効数字。

ただし、倍精度浮動小数点変数 double は 16 ビットの有効数を処理できます。実際のアプリケーションでは、より大きな数値またはより小さな数値を操作および処理する必要があります。 Float と double は科学計算または工学計算にのみ使用でき、商用計算では java.math.BigDecimal を使用する必要があります。

BigDecimal が作成するのはオブジェクトですが、 、 - 、 * 、 / などの従来の算術演算子を使用してそのオブジェクトに対して数学的演算を直接実行することはできません。対応するメソッドを呼び出す必要があります。メソッド内のパラメーターも BigDecimal オブジェクトである必要があります。

2. DecimalFormat

これは NumberFormat の特定のサブクラスであり、10 進数の書式設定に使用されます。これは、数値をできるだけ早く必要なものにフォーマットするのに役立ちます。

3. String.format

最も簡単な印刷方法。

String.format 文字列形式として、単に String.format(“Hello %s”, “John”) を呼び出すだけです。

String.format は String 型の文字列を返します。

4. NumberFormat

NumberFormat は、すべての数値形式の抽象基本クラスです。このクラスは、数値の書式設定と分析のためのインターフェイスを提供します。

上記 4 つの方法のうち、一般的に使用されるのは 2 と 3 です。

Java の知識をさらに深めたい場合は、Java の基本チュートリアル を参照してください。

以上がJavaで小数点を保持する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。