问答详情
源自:10-3 Java 中的抽象类

我根据老师的题目写的代码,结果为什么会这样?为什么这么长?


http://img.mukewang.com/59548fc8000188a204580219.jpg

http://img.mukewang.com/59548fc9000111c203840372.jpg

http://img.mukewang.com/59548fc90001375903650376.jpg

http://img.mukewang.com/59548fc900016a0903940231.jpg

http://img.mukewang.com/59548fc90001bea702720133.jpg

为什么会是28.25999999...8?

提问者:丶低调丶 2017-06-29 13:29

个回答

  • weibo_Evan_看戏的戏子_0
    2017-06-30 18:03:56
    已采纳

     import java.math.BigDecimal;

            BigDecimal b1 = new BigDecimal(Double.toString(r*r));

            BigDecimal b2 = new BigDecimal(Double.toString(pi));

            s = b1.multiply(b2).doubleValue();

      

    java直接进行浮点数运算会丢失精度。要转换成大数进行运算。输入上面的代码试试。

  • 尘1257343
    2017-08-20 20:50:03

    为什么会出现这样的错误,还有红笔画出来的 JA 是什么意思??http://img.mukewang.com/5999857400015a5509610217.jpg

  • weibo_Evan_看戏的戏子_0
    2017-06-29 13:56:15

    把s2.DS(3)改成s2.DS(3.0)试试。