国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

浮點型(float、double)進行計算時不能精確計算(轉)

2019-11-11 04:27:38
字體:
來源:轉載
供稿:網友
一提到java里面的商業計算,我們都知道不能用float和double,因為他們無法 進行精確計算。但是Java的設計者給編程人員提供了一個很有用的類BigDecimal,他可以完善float和double類無法進行精確計算的缺 憾。BigDecimal類位于java.maths類包下。首先我們來看下如何構造一個BigDecimal對象。它的構造函數很多,我挑最常用的兩個 來演示一下:一個就是BigDecimal(double val),另一個就是BigDecimal(String str)。下面是兩個浮點數相減的例子來說明:public static void main(String[] args) {double a = 1;double b = 0.9;BigDecimal a1 = new BigDecimal(Double.toString(a));BigDecimal b1 = new BigDecimal(Double.toString(b));BigDecimal a2 = new BigDecimal(a);BigDecimal b2 = new BigDecimal(b);double c = a1.subtract(b1).doubleValue();double d = a2.subtract(b2).doubleValue();System.out.PRintln(“c=”+c);System.out.println(“d=”+d);}結果為:c=0.1d=0.09999999999999998可以得出結論:利用double作為參數的構造函數,無法精確構造一個BigDecimal對象,需要自己指定一個上下文的環境,也就是指定精確位。而利用String對象作為參數傳入的構造函數能精確的構造出一個BigDecimal對象。
上一篇:文章標題

下一篇:分組背包

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 海安县| 西青区| 崇左市| 顺平县| 阿拉善左旗| 错那县| 荔浦县| 永济市| 色达县| 苍山县| 冷水江市| 浦东新区| 肇庆市| 铜鼓县| 厦门市| 浦县| 乐昌市| 富锦市| 会同县| 昌黎县| 长武县| 富阳市| 汪清县| 乐都县| 龙海市| 昌江| 芦溪县| 深泽县| 许昌县| 若尔盖县| 金坛市| 溆浦县| 长丰县| 龙泉市| 阿瓦提县| 潞西市| 太和县| 龙州县| 湾仔区| 迁安市| 泗洪县|