欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

淺談Java中浮點型數(shù)據(jù)保留兩位小數(shù)的四種方法

 更新時間:2021年09月29日 10:33:01   作者:灰小猿  
今天在進行開發(fā)的過程中遇到了一個小問題,是關于如何將double類型的數(shù)據(jù)保留兩位小數(shù)。具有一定的參考價值,本文就詳細的介紹一下

今天在進行開發(fā)的過程中遇到了一個小問題,是關于如何將double類型的數(shù)據(jù)保留兩位小數(shù)。突然發(fā)現(xiàn)這方面有一點欠缺,就來總結(jié)一下。

一、String類的方式

該方式是是使用String的format()方法來實現(xiàn)的,該方法的作用就是規(guī)范數(shù)據(jù)的格式,第一個參數(shù)傳入一個字符串來表示輸出的數(shù)據(jù)格式,如保留兩位小數(shù)就使用“%.2f”,第二個參數(shù)是要進行格式化的數(shù)據(jù)。實例如下:

        double testDounle_01 = 123.456;
        float testFloat_01 = 456.125f;
 
        /**
         * 使用string類的方式
         * */
        System.out.println("使用string類的方式");
        System.out.println(String.format("%.2f", testDounle_01));
        System.out.println(String.format("%.2f", testFloat_01));

二、DecimalFormat類

DecimalFormat類主要就是用于格式化十進制數(shù)據(jù)的,這個類是NumberFormat 的一個具體子類,操作和使用起來都比較方便。在使用的時候需要實例化這個類,構造函數(shù)中傳入數(shù)據(jù)的格式類型。

其中各個符號的含義如下:

 使用案例如下:

/**
     * 測試保留兩位小數(shù)
     */
    public static void testDoubleToTwo() {
 
        /**
         *DecimalFormat類
         */
        DecimalFormat decimalFormat = new DecimalFormat("#.00");
        String ans_3 = decimalFormat.format(testDounle_01);
        System.out.println(ans_3);
    }

三、BigDecimal類進行數(shù)據(jù)處理

java.math包中提供的API類BigDecimal,是用來對超過16位有效位的數(shù)進行精確的運算。雙精度浮點型變量double可以處理16位有效數(shù)。但是也可以用來定義小數(shù)點后兩位,但是使用起來比較麻煩,不太推薦使用。

        double testDounle_01 = 123.456;
        float testFloat_01 = 456.125f;
 
        /**
         *  BigDecimal類進行數(shù)據(jù)處理
         *  */
        BigDecimal bigDecimal = new BigDecimal(testDounle_01);
        double ans_2 = bigDecimal.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
        System.out.println(ans_2);

四、NumberFormat類進行數(shù)據(jù)處理

NumberFormat類是數(shù)據(jù)格式化類,使用該類將浮點數(shù)保留二進制的方法和BigDecimal類似,但是使用起來也是十分的麻煩。

        double testDounle_01 = 123.456;
        float testFloat_01 = 456.125f;
 
        /**
         *  NumberFormat類進行數(shù)據(jù)處理
         *  */
        NumberFormat numberInstance = NumberFormat.getNumberInstance();
//        設置最大小數(shù)點位數(shù)
        numberInstance.setMaximumFractionDigits(2);
//        設置數(shù)據(jù)舍入類型
        numberInstance.setRoundingMode(RoundingMode.HALF_UP);
        System.out.println(numberInstance.format(testDounle_01));

總結(jié)一下

對于將浮點型數(shù)據(jù)保留兩位小數(shù),我比較推薦的還是前兩種方法,或者是直接使用String.format()方法,

 到此這篇關于淺談Java中浮點型數(shù)據(jù)保留兩位小數(shù)的四種方法的文章就介紹到這了,更多相關Java浮點型保留兩位小數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • idea項目的左側(cè)目錄沒了如何設置

    idea項目的左側(cè)目錄沒了如何設置

    這篇文章主要介紹了idea項目的左側(cè)目錄沒了如何設置的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • Springboot整合log4j2日志全解總結(jié)

    Springboot整合log4j2日志全解總結(jié)

    這篇文章主要介紹了Springboot整合log4j2日志全解總結(jié),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-12-12
  • java中File轉(zhuǎn)為MultipartFile的四種實現(xiàn)方式

    java中File轉(zhuǎn)為MultipartFile的四種實現(xiàn)方式

    這篇文章主要介紹了java中File轉(zhuǎn)為MultipartFile的四種實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Spring-Retry的使用詳解

    Spring-Retry的使用詳解

    在日常的一些場景中, 很多需要進行重試的操作.而spring-retry是spring提供的一個基于spring的重試框架,本文就詳細的介紹一下如何使用,感興趣的可以了解一下
    2021-11-11
  • 當Transactional遇上synchronized的解決方法分享

    當Transactional遇上synchronized的解決方法分享

    前些時間剛好刷到了有關于“# 【事務與鎖】當Transactional遇上synchronized”這一類的文章,感覺這也是工作中經(jīng)常會遇到的一類問題了。所以就針對這個話題進行了分析并整理了常用的解決方法,希望對大家有所幫助
    2023-05-05
  • Java中使用JavaMail多發(fā)郵件及郵件的驗證和附件實現(xiàn)

    Java中使用JavaMail多發(fā)郵件及郵件的驗證和附件實現(xiàn)

    這篇文章主要介紹了Java中使用Java Mail多發(fā)郵件及郵件的驗證和附件實現(xiàn),包括在郵件中加入圖片等功能的實現(xiàn)講解,需要的朋友可以參考下
    2016-02-02
  • java web驗證碼實現(xiàn)代碼分享

    java web驗證碼實現(xiàn)代碼分享

    這篇文章主要為大家分享了java web驗證碼的實現(xiàn)代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-06-06
  • 使用Autowired為什么會被IDEA警告最佳修改方法

    使用Autowired為什么會被IDEA警告最佳修改方法

    這篇文章主要介紹了使用Autowired為什么會被IDEA警告,應該怎么修改最佳,除了使用@Autowired以外,我們其實也有幾種好用的方式,使用@Resource替代@Autiwired方法是其中一種,只需要改變一個注解,這里就不展示了,需要的朋友可以參考下
    2023-02-02
  • Scala中優(yōu)雅的處理Null問題

    Scala中優(yōu)雅的處理Null問題

    Spark 采用混合方式,大部分情況下使用 Option,但個別時候出于性能原因才使用了null。一個很好的習慣是當有方法返回值可能為null的時候,使用Option來代替,本文給大家介紹Scala處理Null的知識詳解,一起看看吧
    2021-08-08
  • Day16基礎不牢地動山搖-Java基礎

    Day16基礎不牢地動山搖-Java基礎

    這篇文章主要給大家介紹了關于Java中方法使用的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-08-08

最新評論