首頁 > Java > Java基礎 > 主體

java怎麼保留小數

發布: 2019-11-19 14:00:44
原創
4503 人瀏覽過

java怎麼保留小數

在java的學習中,往往演算法有一個是屬於java的小數點位數保留。一般有四種方式。

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保留小數的四種方法介紹:

1、BigDecimal

#常用於金額的計算,超過16位元使用

Java在java.math套件中提供的API類別BigDecimal,用來對超過16位元有效位元的數進行精確的運算。

雖然雙精確度浮點型變數double可以處理16位元有效數。在實際應用中,需要對更大或更小的數進行運算和處理。 float和double只能用來做科學計算或是工程計算,在商業計算中要用java.math.BigDecimal。

BigDecimal所創建的是對象,但是不能使用傳統的 、-、*、/等算術運算子直接對其對象進行數學運算,而必須調用其相對應的方法。方法中的參數也必須是BigDecimal的物件。

2、DecimalFormat

它是 NumberFormat 的一個具體子類,用來格式化十進位數字。可以幫你用最快的速度將數字格式化為你需要的樣子。

3、String.format

列印最簡單。

String.format 以字串格式化,簡單呼叫 String.format(“Hello %s”, “John”);

String.format傳回的是String類型的字串。

4、NumberFormat

NumberFormat 是所有數值格式的抽象基底類別。該類別提供了格式化和分析數值的介面。

以上四種方式,常用的是2,3。

更多java知識請關注java基礎教學

以上是java怎麼保留小數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!