.NET中Math.Floor()和Math.Truncate()的区别是什么?
当前回答
一些例子:
Round(1.5) = 2
Round(2.5) = 2
Round(1.5, MidpointRounding.AwayFromZero) = 2
Round(2.5, MidpointRounding.AwayFromZero) = 3
Round(1.55, 1) = 1.6
Round(1.65, 1) = 1.6
Round(1.55, 1, MidpointRounding.AwayFromZero) = 1.6
Round(1.65, 1, MidpointRounding.AwayFromZero) = 1.7
Truncate(2.10) = 2
Truncate(2.00) = 2
Truncate(1.90) = 1
Truncate(1.80) = 1
其他回答
Math.Floor()轮 "朝向负无穷"符合IEEE标准754第4节。
Math.Truncate()舍入“最接近零的整数”。
数学。楼层四舍五入,马斯。天花板来了,还有数学。将回合截断至零。因此,数学。截断就像数学。正数的地板,和数学一样。负数的上限。这是参考资料。
为了完整起见,请使用数学。四舍五入到最接近的整数。如果这个数字恰好在两个整数的中间,那么它就会四舍五入到偶数。参考。
参见:暗黑和平的答案。强烈推荐!
Math.Floor ():
它给出小于或等于给定数的最大整数。
Math.Floor(3.45) =3
Math.Floor(-3.45) =-4
Math.Truncate ():
它删除数字的小数点后几位并替换为零
Math.Truncate(3.45)=3
Math.Truncate(-3.45)=-3
从上面的例子中我们还可以看到,对于正数,下限和截断是相同的。
Math.Floor():返回小于或等于指定的双精度浮点数的最大整数。
round():将值舍入为最接近的整数或指定的小数位数。
数学。地板滑到左边… 数学。细胞向右滑动… 数学。截断criiiiss croooss(地板/天花板始终朝向0) 数学。圆润恰恰,非常流畅……(走到最近的一边)
让我们开始工作吧!(⌐□_□)
向左……Math.floor 你们现在都收回来……-- 这次跳了两下……- = 2
大家鼓掌✋✋
你能走多低?你能往下走吗?一直到地板上?
if (this == "wrong")
return "i don't wanna be right";
Math.truncate(x)也与int(x)相同。 通过去掉一个正的或负的分数,你总是趋向0。
推荐文章
- 检查SqlDataReader对象中的列名
- 如何将类标记为已弃用?
- c# 8支持。net框架吗?
- AutoMapper:“忽略剩下的?”
- 如何找出一个文件存在于c# / .NET?
- string. isnullorempty (string) vs. string. isnullowhitespace (string)
- 完全外部连接
- 如何使用。net 4运行时运行PowerShell ?
- 在foreach循环中编辑字典值
- 使用System.IO.Compression在内存中创建ZIP存档
- 在WPF中引入一个窗口到前面
- .NET用固定的空格格式化字符串
- 我如何获得和设置环境变量在c# ?
- Linq风格的“For Each”
- 我如何得到一个动画gif在WPF工作?