本帖最后由 黑骏马 于 2013-8-11 09:50 编辑
小数的四舍五入可以使用Math.round()方法,它有8个重载,可以对double和decimel类型进行4种方式的舍入:一个参数:Math.round(number) 将小数值舍入到最接近的整数值。- <span style="font-size: 14px; line-height: 1.5;">Math.Round(8.3); //Returns 8</span>
- Math.Round(8.5); //Returns 8
- Math.Round(8.6); //Returns 9
- Math.Round(-8.3); //Returns -8
- Math.Round(-8.6); //Returns -9
复制代码 两个参数:Math.round(number,保留小数位数) 将小数值按指定的小数位数舍入。
- Math.Round(3.44444 , 1); //Returns 3.4
- Math.Round(3.44444 . 3); //Returns 3.444
复制代码 后两种是在前两种方法的基础上加一个参数,用于解决二进制浮点数算术运算精度损失的问题,
(前面8.5舍入后得到的不是9而是8,但有时又可能会得到9,为解决这类问题增加了一个参数)- Math.Round(11.5 , MidpointRounding.ToEven); //Returns 12
- Math.Round(11.5 , MidpointRounding.AwayFromZero); //Returns 11
- Math.Round(3.4454 , 2 , MidpointRounding.ToEven); //Returns 3.45
- Math.Round(3.4454 , 2 , MidpointRounding.AwayFromZero); //Returns 3.,44
复制代码
|