gpt4 book ai didi

c# - 为什么要使用这种笨拙的方式将 float 舍入为整数?

转载 作者:行者123 更新时间:2023-11-30 13:54:43 24 4
gpt4 key购买 nike

How does DoubleUtil.DoubleToInt(double val) work?我们了解到 .NET Framework 有一种特殊的方法来舍入浮点值:

public static int DoubleToInt(double val)
{
return (0 < val) ? (int)(val + 0.5) : (int)(val - 0.5);
}

为什么他们不只是使用 (int)Math.Round(val)

或者:如果这更好,为什么 Math.Round 没有这样定义?必须有所取舍。

最佳答案

Math.Round 将导致创建具有所需确切值的 double,然后需要将其转换为 int。此处的代码避免了创建 double。它还允许省略错误处理,以及与其他类型的舍入模式或要舍入的数字相关的代码。

关于c# - 为什么要使用这种笨拙的方式将 float 舍入为整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39477792/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com