C#decimal结构取整方法总结

本文主要探讨了C#中decimal数据类型进行取整操作的各种方法,包括使用System库中的函数、字符串转换以及浮点数操作等,详细总结了不同取整策略的适用场景和注意事项。

一点小总结,与大家分享:

using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication1
{
    
class Program
    {
        
static void Main(string[] args)
        {
            
//Floor向负无穷方向舍入为最接近的整数
            Console.WriteLine(decimal .Floor(-1.3m)); //-2
            Console.WriteLine(decimal .Floor (3.5m)); //3
            Console.WriteLine(decimal .Floor (4m));   //4

            
//Truncate向零方向舍入为整数
            Console.WriteLine(decimal.Truncate(-1.3m));//-1
            Console.WriteLine(decimal.Truncate (3.5m));//3
            Console.WriteLine(decimal.Truncate (4m));  //4
            
            
//如果想实现四舍五入,则必须用下面的技巧,保留到小数点后2位,就用100,保留到小数点后3位就用1000,依次类推
            decimal a = 8.335m,b=8.345m;
            Console.WriteLine(
decimal .Truncate (a*100+0.5m)/100); //8.34
            Console.WriteLine (decimal .Truncate (b*100+0.5m)/100); //8.35

            
//总结,System.Double(double)和System.Single(float)结构都没有这2种方法,所以一般用decimal来实现取整
        }
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值