decimal.round的转换指定位数decimal用法

本文介绍了两种不同的四舍五入方法:四舍六入五成双(ToEven)和传统四舍五入(AwayFromZero)。这两种方法适用于不同的场景,并提供了具体的C#代码实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如图,我们看到 我们可以把旧的数据进行处理后在返回

里面的3个参数分别表示:要转换的值,保留几位decimal 小数,计算的方法

计算的方法包含 :

MidpointRounding.ToEven

称为就近舍入或四舍六入五成双,后面是5的情况比较特殊,如果前面是奇数,则升上去,反之,则截掉,在金融结算中,经常使用该方法,来平衡双方的盈亏。 在计算社保公积金反而不适合

 

MidpointRounding.AwayFromZero

称为四舍五入发

代码如下:

  /// <summary>
        /// 计算算好的decimal值 四舍五入法
        /// </summary>
        /// <param name="OldValue"></param>
        /// <returns></returns>
        public static decimal Decimel_AwayFromZero(decimal OldValue,int CheckType = 0) {
            decimal NewValue = 0;
            if (CheckType == 0) {  NewValue = decimal.Round(OldValue, 2, MidpointRounding.AwayFromZero); }
            else { NewValue = decimal.Round(OldValue, 0, MidpointRounding.AwayFromZero); }
           
            return NewValue;
        }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值