Java?BigDecimal類的一般使用、BigDecimal轉(zhuǎn)double方式
BigDecimal類的一般使用、BigDecimal轉(zhuǎn)double
BigDecimal大據(jù)類
浮點(diǎn)型運(yùn)算的時候直接 加減乘除時可能會出現(xiàn)數(shù)據(jù)失真(精度問題)。
BigDecimal可以解決浮點(diǎn)型運(yùn)算數(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)加法運(yùn)算public BigDecimal subtract (BigDecimal value)減法運(yùn)算public BigDecimal multiply(BigDecimal value)乘法運(yùn)算public BigDecimal divide (BigDecimal value)除法運(yùn)算
? ? ? ? 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)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
idea中service或者mapper引入報紅的問題及解決
在使用IntelliJ IDEA開發(fā)SpringBoot項(xiàng)目時,有時會遇到Service或Mapper接口引入時報紅但不影響項(xiàng)目運(yùn)行的情況,這主要是因?yàn)镮DEA的檢查級別設(shè)置問題,解決方法是將有問題的Error級別改為編譯通過的安全級別,即可消除報紅2024-09-09
淺談Map集合中g(shù)et不存在的key值,會拋出異常嗎?
這篇文章主要介紹了淺談Map集合中g(shù)et不存在的key值,會拋出異常嗎?具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-09-09
IntelliJ IDEA 如何徹底刪除項(xiàng)目的步驟
本篇文章主要介紹了IntelliJ IDEA 如何徹底刪除項(xiàng)目的步驟,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-11-11
借助Maven搭建Hadoop開發(fā)環(huán)境的最詳細(xì)教程分享
在Maven插件的幫助下,VSCode寫Java其實(shí)非常方便,所以本文就來和大家詳細(xì)講講如何借助maven用VScode搭建Hadoop開發(fā)環(huán)境,需要的可以參考下2023-05-05

