- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试舍入 float ,但有一定条件。如果第二位小数点大于或等于 9,则向上取整,否则向下取整。你能帮我这个吗?
//0.56 -> 0.5
//1.56 -> 1.5
//1.58 -> 1.5
//1.59 -> 1.6
//15.56 -> 15.5
最佳答案
要在 0.09
处四舍五入,在 0.089999999...
处四舍五入,您需要添加 0.01
并截断为 1 个小数位。
可以使用 Math.floor()
截断正浮点值。方法,像这样:
Math.floor(value * 10 + 0.1) / 10
更新
因为像 0.59
这样的数字实际上是 0.58999999999999996
,所以它会向下舍入,而本意是向上舍入。
绕过“broken floating point math”的一种方法是使用 BigDecimal
:
BigDecimal.valueOf(value).add(new BigDecimal("0.01")).setScale(1, RoundingMode.DOWN)
如果您经常这样做,new BigDecimal("0.01")
值应该创建为静态最终常量。
注意:与第一个解决方案一样,这仅适用于正数。
关于java - 按特定小数值的舍入数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48012575/
你好, 我刚刚更新了增值税增加的价格表,但这给我留下了丑陋的数字,即 22.78、33.24 等。 有没有我可以调用的脚本来将小数点归零,以便 22.78 = 23.00 和 33.24 = 33.0
我正在尝试回答 DS Malik 的 C++ 编程中的以下问题:从问题分析到程序设计 第 2 章,第 7 题 Write a program that prompts the user to inpu
这是我的代码,尚未完全完成,对波兰语感到抱歉,但很容易得到它。 http://pastebin.com/QPmVaPFv所以,这是关于 vert 的,每个访客的价格有 4 个变量:1.大狗2.中型犬3
我只是想对 1.275.toFixed(2) 求和,我期望返回 1.28,而不是 1.27。 使用各种计算器和四舍五入到最接近的百分位的简单方法,如果最后一位大于或等于五,则应该四舍五入。 p> 如果
我是一名优秀的程序员,十分优秀!