今天看到了這個3*0.1==0.3,于是上網查了一下。我們的計算機用的是10進制的算法,它是用10的質子也就是2和5來進行運算。
System.out.println(3*0.1);
列印的結果為:0.30000000000000004
但是我換一個運算結束後的尾數能被2或5整除的
System.out.println(3*0.5);
列印的結果為:1.5
可能我這樣比較難以了解。我把我看到的這個運算原理連結貼在下面。
https://blog.csdn.net/ialexanderi/article/details/78936466