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

Java中BigDecimal的舍入模式解析(RoundingMode)

 更新時間:2022年06月18日 11:37:57   作者:布客飛龍  
這篇文章主要介紹了Java中BigDecimal的舍入模式解析(RoundingMode),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

BigDecimal的舍入模式(RoundingMode)

BigDecimal.divide方法中必須設置roundingMode,不然會報錯。

  • ROUND_UP:向正無窮方向對齊(轉換為正無窮方向最接近的所需數(shù)值)
  • ROUND_DOWN:向負無窮方向對齊
  • ROUND_CEILING:向原點的反方向對齊
  • ROUND_FLOOR:向原點方向對齊
  • ROUND_HALF_UP:“四舍五入”,如果舍棄部分的最高位大于等于 5,向正無窮方向對齊,否則向負無窮方向對齊
  • ROUND_HALF_DOWN:“五舍六入”,如果舍棄部分的最高位大于 5,向正無窮方向對齊,否則向負無窮方向對齊
  • ROUND_HALF_EVEN:“四舍六入五成雙”,如果舍棄部分的最高位大于等于六,或等于五并且前一位是奇數(shù),向正無窮方向對齊,否則向負無窮方向對齊
  • ROUND_UNNECESSARY:如果需要舍入,就拋出算術異常

BigDecimal的常規(guī)用法

在java項目中一般來bigdecimal來進行 精度較高的金錢 運算 ,以及浮點數(shù)的運算。

Bigdecimal a =new Bigdecimal(1);
Bigdecimal b =new Bigdecimal(1);
  • 加法 a.add(b)
  • 減法 a.subtract(b)
  • 乘法 a.multiply(b)
  • 除法 a.divide(b)

在運用中可以進行小數(shù)點的格式化 運算。

BigDecimal.setScale()方法用于格式化小數(shù)點
setScale(1)表示保留一位小數(shù),默認用四舍五入方式?
setScale(1,BigDecimal.ROUND_DOWN)直接刪除多余的小數(shù)位,如2.35會變成2.3?
setScale(1,BigDecimal.ROUND_UP)進位處理,2.35變成2.4?
setScale(1,BigDecimal.ROUND_HALF_UP)四舍五入,2.35變成2.4

setScaler(1,BigDecimal.ROUND_HALF_DOWN)四舍五入,2.35變成2.3,如果是5則向下舍
setScaler(1,BigDecimal.ROUND_CEILING)接近正無窮大的舍入
setScaler(1,BigDecimal.ROUND_FLOOR)接近負無窮大的舍入,數(shù)字>0和ROUND_UP作用一樣,數(shù)字<0和ROU

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • 面試官:詳細談談Java對象的4種引用方式

    面試官:詳細談談Java對象的4種引用方式

    這篇文章主要給大家介紹了java面試官常會問到的,關于Java對象的4種引用方式的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Java具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-05-05
  • Maven打包并生成運行腳本的示例代碼

    Maven打包并生成運行腳本的示例代碼

    這篇文章主要介紹了Maven打包并生成運行腳本,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-07-07
  • 詳解Java并發(fā)工具類之CountDownLatch和CyclicBarrier

    詳解Java并發(fā)工具類之CountDownLatch和CyclicBarrier

    在JDK的并發(fā)包中,有幾個非常有用的并發(fā)工具類,它們分別是:CountDownLatch、CyclicBarrier、Semaphore和Exchanger,本文主要來講講其中CountDownLatch和CyclicBarrier的使用,感興趣的可以了解一下
    2023-06-06
  • Mybatis Plus使用條件構造器增刪改查功能的實現(xiàn)方法

    Mybatis Plus使用條件構造器增刪改查功能的實現(xiàn)方法

    這篇文章主要介紹了Mybatis-Plus使用條件構造器增刪改查,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-05-05
  • Springboot項目打war包docker包找不到resource下靜態(tài)資源的解決方案

    Springboot項目打war包docker包找不到resource下靜態(tài)資源的解決方案

    今天小編就為大家分享一篇關于Springboot項目打war包docker包找不到resource下靜態(tài)資源的解決方案,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • JDK集合源碼之解析TreeMap(一)

    JDK集合源碼之解析TreeMap(一)

    下面小編就為大家?guī)硪黄獪\談java中的TreeMap 排序與TreeSet 排序。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2021-07-07
  • 代理角色java設計模式之靜態(tài)代理詳細介紹

    代理角色java設計模式之靜態(tài)代理詳細介紹

    查了好多資料,發(fā)現(xiàn)還是不全,干脆自己整理吧,至少保證在我的做法正確的,以免誤導讀者,也是給自己做個記錄吧!
    2013-05-05
  • Java 通過API操作GraphQL

    Java 通過API操作GraphQL

    這篇文章主要介紹了Java 通過API操作GraphQL的方法,幫助大家更好的理解和學習使用Java,感興趣的朋友可以了解下
    2021-05-05
  • 談談在Java發(fā)送郵件中遇到的的問題

    談談在Java發(fā)送郵件中遇到的的問題

    本文介紹了在利用Java發(fā)送郵件過程中遇到的的兩個問題,以及如何解決這兩個問題。如果大家也遇到了這些問題,可以來參考借鑒。
    2016-08-08
  • 源碼解析springbatch的job運行機制

    源碼解析springbatch的job運行機制

    這篇文章主要介紹了springbatch的job是如何運行的,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-08-08

最新評論