double怎么轉bigdecimal呢?不知道的小伙伴來看看小編今天的分享吧!
BigDecimal最佳實踐是支持String類型的構造方法,double轉bigdecimal的方法如下:
1、BigDecimal.valueOf(Double_Value)
2、new BigDecimal(String.valueOf(Double_Value))
拓展資料:
Java中double轉BigDecimal的注意事項:
不要直接用double變量作為構造BigDecimal的參數。
1,BigDecimal(double val)構造,用double當參數來構造一個BigDecimal對象。
2,但是這個構造不太靠譜(unpredictable),你可能以為BigDecimal(0.1)就是妥妥的等于0.1,但是你以為你以為的就是你以為的?還真不是,BigDecimal(0.1)這貨實際上等于0.1000000000000000055511151231257827021181583404541015625,因為準確的來說0.1本身不能算是一個double(其實0.1不能代表任何一個定長二進制分數)。
3,BigDecimal(String val)構造是靠譜的,BigDecimal(“0.1”)就是妥妥的等于0.1,推薦大家用這個構造。
4,如果你非得用一個double變量來構造一個BigDecimal,沒問題,我們貼心的提供了靜態方法valueOf(double),這個方法跟new Decimal(Double.toString(double))效果是一樣的。
BigDecimal:
簡介
Java在java.math包中提供的API類BigDecimal,用來對超過16位有效位的數進行精確的運算。雙精度浮點型變量double可以處理16位有效數。在實際應用中,需要對更大或者更小的數進行運算和處理。float和double只能用來做科學計算或者是工程計算,在商業計算中要用java.math.BigDecimal。BigDecimal所創建的是對象,我們不能使用傳統的+、-、*、/等算術運算符直接對其對象進行數學運算,而必須調用其相對應的方法。方法中的參數也必須是BigDecimal的對象。構造器是類的特殊方法,專門用來創建對象,特別是帶有參數的對象。
構造器描述
BigDecimal(int) 創建一個具有參數所指定整數值的對象。
BigDecimal(double) 創建一個具有參數所指定雙精度值的對象。
BigDecimal(long) 創建一個具有參數所指定長整數值的對象。
BigDecimal(String) 創建一個具有參數所指定以字符串表示的數值的對象。
以上就是小編今天的分享了,希望可以幫助到大家。
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com