0.1+0.2!=0.3
看下面程式碼
double c = 0.1 + 0.2;
System.out.println(c);
還有js中
var c = 0.1 + 0.2;
console.log(c);
結果都是0.30000000000000004
這是由於java和js 採用IEEE二進位制浮點數算術標準(IEEE 754)。
浮點型是以二進位制為底數的形式儲存,導致了差異。
可以採用大數運算解決。
java中解決
BigDecimal a1 = new BigDecimal(String.valueOf(0.1));
BigDecimal b1 = new BigDecimal(String.valueOf (0.2));
BigDecimal c1 = a1.add(b1);
System.out.println(c1);
在js中引用math.js
<script type="text/javascript" src="http://mathjs.org/js/lib/math.js"></script>
<script type="text/javascript">
var a = math.bignumber(0.1);
var b = math.bignumber(0.2);
var bigc = a.add(b);
var c = math.number (bigc);
console.log(c);
</script>
相關推薦
『王霸之路』從0.1到2.0一文看盡TensorFlow奮鬥史
0 序篇 2015年11月,Google正式釋出了Tensorflow的白皮書並開源TensorFlow 0.1 版本。 2017年02月,Tensorflow正式釋出了1.0.0版本,同時也標誌著穩定版的誕生。 2019年10月,TensorFlo
輸入n , 計算sum=1!+2!+3!+..........+n!的末6位(不含前導0)。
要求n<=10^6,n!表示前n個正整數之積。如輸入n=10;輸出37913 #include<iostream> #include<math.h> using namespace std; int main() { long lo
解決CentOS 7.0/7.1/7.2/7.3在VMware虛擬機器中沒有網絡卡
CentOS 7自2014釋出以來,出現了多個版本,CentOS-7.0-1406,CentOS-7.1-1503,CentOS 7-1511,CentOS 7.3-1611。這些版本與CentOS 6.X/5.X區別比較大。 主要問題總結如下: 問題1:Vmwar
演算法C++實現(有註釋):統計數字某位數的個數,用隨機函式產生100個[0,99]範圍內的隨機整數, 統計數字的個位上的數字分別為0,1,2,3,4,5,6,7,8,9的數的個數,並打印出來。
#include<iostream> #include<cstdlib>// #include <stdlib.h> void srand( unsigned seed ); //功能: 設定rand()隨機序列種子。對於給定的種子se
selenium (3.0.1)+ Firefox (49.0.2)環境搭建
第一步:在官網下載對應OS的geckodriver.exe, (https://github.com/mozilla/geckodriver/releases/) 第二步:將geckodriver.exe放到和firefox安裝的目錄下。 第三步:在path中加入ge
Android Studio中ArcGIS Runtime Android SDK 100.1.0(100.2.0,100.3.0)開發原生地圖應用(入門環境配置)
前言 最近因為工作關係,需要使用ArcGIS Runtime SDK for Android搭建一個簡單的入門Demo,也就是傳說中的Hello GISer。翻了一遍官方文件,ArcGIS Runtime SDK for Android的安裝推薦使用Gradle,而
Ubuntu16.04.3 下安裝Qt5.9.1 OpenCV3.2.0 (包括OpenCV_contrib)完美版
1.安裝Qt5.9.1 Qt官網址:https://download.qt.io/official_releases/qt/ 根據自己的需要選擇版本,這裡我選擇的是qt-opensource-linux-x64-5.9.1.run下載之後通過ctrl+alt
從鍵盤輸入10個0-9的整數,統計為1、2、3的數字和其他數字的個數
從鍵盤輸入10個整數,合法值為1、2、3,不是這三個數剛為非法數字。試程式設計統計每個整數和其他數字的個數。import java.util.Scanner;public class Tt{ publi
筆記 屬性 權限 用戶 臨時權限(猿課精講1.6-2.0)
linux1.6 文件或目錄屬性信息ls -l 看目錄的詳細信息- 普通文件 d 目錄 s 進程間通信 c 字符設備 b 塊設備 l 軟連接(快捷方式) p管道文件所屬主 所屬組 其他人 權限rwxls -li inode號ls -la 111 有兩個子目錄 ls -lh 根據文件大小更改單位1.7 chmo
Angular 1.0演變Angular 2.0的簡單優勢列舉
roi col 綁定 lam 模塊 neu 更強 rip 類型 首先,Angular最核心的4大特性分別是: 1、模塊化 2、MVC 3、雙向數據綁定 4、指令 Angular 1.0演變Angular 2.0的簡單優勢列舉: 1、性能限制上的優化
大數據平臺1.0總結和2.0演化路線
同步數據 大數 還要 時間 mapr right 問題: 雅虎 從0到1 從3月份到現在2個月過去了,整個數據平臺從0到1,算是有了一個基本的樣子,跌跌撞撞的勉強支撐起運營的一些基本業務,當然這僅僅是開始,下一步還要從零打造自己的UBS系統,想想都興奮呢!接下來總結下自
給大家聊一聊雲收藏從 Spring Boot 1.0 升級到 2.0 所踩的坑
springboot 雲收藏 先給大家曬一下雲收藏的幾個數據,作為一個 Spring Boot 的開源項目(https://github.com/cloudfavorites/favorites-web)目前在 Github 上面已經有1600多個 Star,如果按照 SpringBoot 標簽進行篩
13. HTTP1.0 HTTP 1.1 HTTP 2.0主要區別
HTTP1.0 HTTP 1.1 HTTP 2.0主要區別 HTTP1.0 HTTP 1.1主要區別 長連線 節約頻寬 HOST域 HTTP1.1 HTTP 2.0主要區別
輕量ORM-SqlRepoEx (十二)SqlRepoEx 2.0.1 至 2.2.0 版本更新說明
一、功能變化 (一)、強化特性支援 1、部分型別擁有複雜屬性; 2、有些屬性不是來源於資料庫 3、使用者在原來的程式碼中使用 SqlRepoEx ,減少欄位與資料庫欄位之間的衝突; 4、為支援新的特性及優化屬性讀寫,增加了 SimpleWritablePropertyMatche
錯誤:libatk1.0-0 : Depends: libatk1.0-data (>= 2.30.0-1) but 2.28.1-1 is to be installed
在Ubuntu下安裝檔案時遇到以下錯誤: The following packages have unmet dependencies: libatk1.0-0 : Depends: libatk1.0-data (>= 2.30.0-1) but 2.28.1-1 is t
如何優雅的談論HTTP/1.0/1.1/2.0
本文將涉及以下方面: HTTP協議 HTTP1.0 HTTP1.1 HTTP2.0 1.0和1.1和2.0之間的區別 HTTPS HTTP協議 HTTP(超文字傳輸協議,HyperText Transfer Protocol)是網際網路上應用最為廣
DOS 1.25/2.0 它已經 36 歲了。 | 我是菜鳥
微軟重新開源 MS-DOS 1.25/2.0 它已經 36 歲了。 Ronny 2018年10月16日 暫無評論 閱讀 441 次 導讀 2014年3月,微軟通過計算機歷史博物館放出了MS-DOS 1.25、2.0兩個早期版本的原始碼,並講述了該系統的早年
phpMyAdmin 4.0.1--4.2.12 本地檔案包含漏洞(CVE-2014-8959)
利用條件: 1.登入phpmyadmin後臺 2.需要截斷 滿足第二個條件 php版本必須 <5.3.4 搭建環境 我們在www目錄下放置phpinfo.txt 和 phpadmin4.0.3 phpmya
大資料平臺1.0總結和2.0演化路線
目前的架構方式是這樣的: ·從使用Sqoop 定時從MySQL中同步資料,資料量大隻能小水管的去fetch每次5-10W條記錄,避免資料庫壓力過大 ·Flume tailagent 每彙總一小時然後傳遞logcenter,通過Python過濾後批量
安裝impala報錯python-setuptools is needed by impala-kudu-shell-2.7.0+cdh5.9.0+0-1.cdh5.9.0.p0.11.el7.x86
安裝impala的rpm -ivh impala-kudu-shell-2.7.0+cdh5.9.0+0-1.cdh5.9.0.p0.11.el7.x86_64.rpm報錯 [[email protected] soft]# rpm -ivh impala-ku