Java?BigDecimal類的一般使用、BigDecimal轉(zhuǎn)double方式
更新時間:2022年01月23日 10:31:33 作者:_七七
這篇文章主要介紹了Java?BigDecimal類的一般使用、BigDecimal轉(zhuǎn)double方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
BigDecimal類的一般使用、BigDecimal轉(zhuǎn)double
BigDecimal大據(jù)類
浮點型運算的時候直接 加減乘除時可能會出現(xiàn)數(shù)據(jù)失真(精度問題)。
BigDecimal可以解決浮點型運算數(shù)據(jù)失真的問題。
? ? ? ? double a = 0.1; ? ? ? ? double b = 0.2; ? ? ? ? double c = a+b; ? ? ? ? System.out.println(c);//0.30000000000000004
BigDecimal類
包: java.math.
創(chuàng)建一個BigDecimal對象
public static BigDecimal valueOf(double val)
方法聲明
public BigDecimal add (BigDecinal value)加法運算public BigDecimal subtract (BigDecimal value)減法運算public BigDecimal multiply(BigDecimal value)乘法運算public BigDecimal divide (BigDecimal value)除法運算
? ? ? ? BigDecimal biga = BigDecimal.valueOf(a); ? ? ? ? BigDecimal bigb = BigDecimal.valueOf(b); ? ? ? ? BigDecimal bigc = biga.add(bigb); ? ? ? ? System.out.println(bigc);//0.3
BigDecimal轉(zhuǎn)double
public double doubleValue()
然而BigDecimal只是解決精度問題的手段,獲取double數(shù)據(jù)才是我們的目的
double rs = bigc.doubleValue();
BigDecimal , double 轉(zhuǎn)換方式
BigDecimal offsetAmount = (BigDecimal) cj.get(i).get("xxxx");
double offsetAmount = offsetAmount.doubleValue();BigDecimal直接返回給前臺還不行,得轉(zhuǎn)成double不清楚為什么。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
idea中service或者mapper引入報紅的問題及解決
在使用IntelliJ IDEA開發(fā)SpringBoot項目時,有時會遇到Service或Mapper接口引入時報紅但不影響項目運行的情況,這主要是因為IDEA的檢查級別設(shè)置問題,解決方法是將有問題的Error級別改為編譯通過的安全級別,即可消除報紅2024-09-09
淺談Map集合中g(shù)et不存在的key值,會拋出異常嗎?
這篇文章主要介紹了淺談Map集合中g(shù)et不存在的key值,會拋出異常嗎?具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-09-09
借助Maven搭建Hadoop開發(fā)環(huán)境的最詳細教程分享
在Maven插件的幫助下,VSCode寫Java其實非常方便,所以本文就來和大家詳細講講如何借助maven用VScode搭建Hadoop開發(fā)環(huán)境,需要的可以參考下2023-05-05

