C# Math.Ceiling函数为啥返回值是decimal形式而不是int形式呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# Math.Ceiling函数为啥返回值是decimal形式而不是int形式呢?相关的知识,希望对你有一定的参考价值。

这是框架设计数值运算时的一个思路决定的,即运算的外部精度不能低于运算内精度,虽然很多时候我们根本不需要这么高的精度,但框架将取舍权交由使用者去处理。这种策略已经是数学范畴,跟.Net没多大关系。说白了,为了保持整体上的类型和策略的统一。
你这里指出的这个例子就是个体方法服从整体设计策略的情况。
参考技术A 用Math.Ceiling,这是向上进位取整函数。
例如:Math.Ceiling(32.4) 结果是33; Math.Ceiling(32.0) 结果是 32

与此对应的是向下舍位取整 Math.Floor。
例如: Math.Floor(32.6) 结果是32。

c# 计算后的double怎么四舍五入转int

如图是是将计算后的结果值赋给int,但是怎么实现四舍五入后才存入int呢?

用Math.Ceiling,这是向上进位取整函数。
例如:Math.Ceiling(32.4) 结果是33; Math.Ceiling(32.0) 结果是 32

与此对应的是向下舍位取整 Math.Floor。
例如: Math.Floor(32.6) 结果是32追问

我其实知道这个方法,但是没理解多少,刚才看了下,发现这方法返回的是double类型,那么一切都好说了,谢谢提醒

参考技术A Math.Round(你的数, MidpointRounding.AwayFromZero)追问

谢谢

以上是关于C# Math.Ceiling函数为啥返回值是decimal形式而不是int形式呢?的主要内容,如果未能解决你的问题,请参考以下文章

c#中取整,向上取,向下取

C#连接MySQL数据库的问题,主界面调用这个函数,结果返回值是-1,请问为啥会抛出异常呢?应该怎么改呢?

Math函数

请教:C# WebService调用Java WebService(返回Json类型数据) ,为啥接收为null

零基础学C# :判断一个数是否是素数

小数的取舍