何时使用Decimal.Round()而不是Math.Round)

本文关键字:Round Math Decimal 何时使 | 更新日期: 2024-10-21 04:57:49

我注意到Math.Round()比Decimal.Round)更灵活,因为它能够处理Decimal.Round()所能处理的一切,但也可以在给定double输入的情况下执行相同的操作。那么,在任何情况下,使用Decimal.Round()更好,还是一直使用Math.Round()更好?

何时使用Decimal.Round()而不是Math.Round)

查看.NET源代码:http://referencesource.microsoft.com/#mscorlib/system/math.cs,4f39179a0098ab01

Decimal Math::Round(Decimal)被定义为对Decimal Decimal::Round(Decimal)的直接调用,因此两者是语义类似物。

我想默认情况下,我会使用Decimal::Round来避免额外的函数调用,但JIT无论如何都应该对此进行优化,所以我可能会使用Math::Round来与同一代码文件中的其他Math调用保持一致(如果有的话)。