在groovy中计算不正确 - 浮动和圆形

时间:2018-02-04 09:27:11

标签: groovy

我在groovy中遇到数学方程有困难,想知道如何修复它。

基本上我有5个字符串值,我将其转换为float,

{ 
    "title": "post title",
    "content": "<p>post content</p>\r\n",
     "categories":
       [ "5a7310e7cfa4c52440957bde",
         "5a7310eccfa4c52440957bdf",
         "5a7310f0cfa4c52440957be0",
         "5a7310f5cfa4c52440957be1"],
      "postId": "5a7628be95d1d63668b9da31" 

}

如果我在计算器中输入这个,那么答案应该是-121.48,而是在我的代码中我得到-100.21。我的漂浮和四舍五入错了?

5.00
26.00
0
52.48
-100

1 个答案:

答案 0 :(得分:2)

您忘记在乘以100

之前加上括号
//(all addition and subtraction) * 100 / 100

Math.round((Float.valueOf((String) '5.00') 
       + Float.valueOf((String) '26.00') 
       + Float.valueOf((String) '0') 
       - Float.valueOf((String) '52.48') 
       + Float.valueOf( (String) '-100')) * 100) / 100