为什么双重行为如此不自然?

时间:2018-05-29 14:03:04

标签: java double calculator

我最近在java中为学校作业制作了一个标准偏差计算器,但我发现了一些双重问题。因为我希望答案尽可能准确,所以我使用了double而不是int或float,但是在很少的情况下响应很奇怪。这是一个例子:

import * as React from 'react';
import * as ReactDOM from 'react-dom';
import Hello from './components/Hello';

ReactDOM.render(<Hello compiler="TypeScript" framework="React" bundler="webpack" />, document.getElementById('root'));

回复应为 .09,但会返回

public class tryTest
{
    public static void main(String[] args)
    {
       double a = 0.1;
       double b = 0.01;
       double c = a-b;
       System.out.println(c);

    }
}

为什么,我应该如何解决这个问题?我是唯一有这个问题的人吗?

编辑:我确实认识到Math.floor(c * 100)/ 100会起作用,但我只是对双重原因感到困惑。

0 个答案:

没有答案