Math.Floor方法
会将给定的数值向下舍入到最接近的整数。对于12.5,向下舍入就是12。然后通过类型转换 (int) 将结果转换为整数类型。
Math.Round方法
会将给定的数值进行四舍五入。默认情况下,当参数为double时,四舍五入的行为是根据具体实现定义的,但通常遵循“银行家舍入规则”(也称作四舍六入五取偶)。
对于12.5这个特定值,在大多数情况下会四舍五入到13。然后通过类型转换 (int) 将结果转换为整数类型。
如果想明确指定是按照中间值向远离零的方向舍入(即标准的四舍五入),可以这样使用:
int result = (int)Math.Round(value, MidpointRounding.AwayFromZero);
Math.Floor与Math.Round举例:
using System;class Program
{static void Main(){//向下取整double value = 12.5;int result = (int)Math.Floor(value);Console.WriteLine(result); // 输出:12// 四舍五入到两位小数int result1 = (int)Math.Round(value);Console.WriteLine(result1); // 输出:13}
}