日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

java中BigDecimal的常见用法

發布時間:2025/4/16 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java中BigDecimal的常见用法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019-06-14?11:05:53

一、精度問題

二、加減乘除

三、大小比較

四、小數位數及四舍五入規則

五、mysql數據庫 設計

?

精度問題:

示例1

問, 結果是多少? 0.01?

No! 結果是0.009999999999999998!

為什么會這樣呢? 因為float和double都是浮點數, 都有取值范圍, 都有精度范圍. 浮點數與通常使用的小數不同, 使用中, 往往難以確定. 常見的問題是定義了一個浮點數, 經過一系列的計算, 它本來應該等于某個確定值, 但實際上并不是!

金額必須是完全精確的計算, 故不能使用double或者float, 而應該采用java.math.BigDecimal.

加減乘除:

兩個BigDecimal值應該怎樣進行加減乘除呢? +, -, *, / 這樣寫嗎? 不!

加減乘除使用了英文的加減乘除, 即add, substract, multiply和divide

?

大小比較:

兩個BigDecimal值比較使用compareTo方法, 比較結果有-1, 0, 1, 分別表示小于, 等于, 大于; 對于0, 可以使用BigDecimal.ZERO表示!

?

小數位數及四舍五入規則:

在項目中, 涉及到稅費的計算, 計算的結果可能是小數點后面十幾位, 那么怎么進行結算呢? 這就需要四舍五入這種東東了

其中setScale的第一個參數是小數位數, 這個示例是保留2位小數, 后面是四舍五入規則.

?

mysql數據庫設計:

BigDecimal在進行入庫時, 數據庫選擇decimal類型, 長度可以自定義, 如18; 小數點我們項目中用的是2, 保留2位小數. 此外還要注意的就是默認值, 一定寫成0.00, 不要用默認的NULL, 否則在進行加減排序等操作時, 會帶來轉換的麻煩!

balance decimal(18,2) DEFAULT ‘0.00’ COMMENT ‘賬戶余額’,
---------------------
作者:is_Min
來源:CSDN
原文:https://blog.csdn.net/qq_34581118/article/details/79799097
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!

轉載于:https://www.cnblogs.com/wanfeng1937/p/11022363.html

總結

以上是生活随笔為你收集整理的java中BigDecimal的常见用法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。