我们都知道普通的舍入方法都是按照数学中的“四舍五入”,这种舍入方式也是平衡的:
比如舍入值为 1.0 对应的原值范围:[0.5, 1.5),
舍入值为2.0对应的原值范围:[1.5, 2.5),
因此可见每个值所对应的范围是平衡的。
但是Math.round中所采用的并非四舍五入的方法,针对五,它有单独的考虑:
如果5之后非零,则入,否则看5前的数子,如果为奇数,则入,否则不入。
比如:
Math.Round(3.44, 1) = 3.4
Math.Round(3.45, 1) = 3.4
Math.Round(3.46, 1) = 3.5
-----------------------------------------------
Math.Round(3.54, 1) = 3.5
Math.Round(3.55, 1) = 3.6
Math.Round(3.56, 1) = 3.6
-----------------------------------------------
Math.Round(3.64, 1) = 3.6
Math.Round(3.65, 1) = 3.6
Math.Round(3.66, 1) = 3.7
-----------------------------------------------
Math.Round(3.74, 1) = 3.7
Math.Round(3.75, 1) = 3.8
Math.Round(3.76, 1) = 3.8