1#
转自:http://www.cnblogs.com/DataFlow/archive/2012/05/17/2505751.html

decimal.Round 的区别

有什么区别?



decimal.Round(xx, decimalPos, MidpointRounding.ToEven);

VS

decimal.Round(xx, decimalPos, MidpointRounding.AwayFromZero);



AwayFromZero, 就是常用的四舍五入.



ToEven, 就比较特别了,称为就近舍入或四舍六入五成双

e.g.

        22.333        to         22.33
        22.335        to         22.34
        22.325        to         22.32
        22.336        to         22.34
        22.326        to         22.33

后面是5的情况比较特殊,如果前面是奇数,则升上去,反之,则截掉,在金融结算中,经常使用该方法,来平衡双方的盈亏