Go lang 如何检查浮点值是否实际上是 int

don*_*yan 4 go

func isFloatInt(floatValue float64) bool{
//What's the implementation here?

}
Run Code Online (Sandbox Code Playgroud)

测试用例:
输入:1.5 输出:false;
输入:1 输出:真;
输入:1.0 输出:真;

bab*_*unk 12

我刚刚检查了操场,这对 NaN 也是正确的。

func isIntegral(val float64) bool {
    return val == float64(int(val))
}
Run Code Online (Sandbox Code Playgroud)


Dov*_*ius 7

你可以通过做一个模数来实现它

func isFloatInt(floatValue float64) bool {
    return math.Mod(floatValue, 1.0) == 0
}
Run Code Online (Sandbox Code Playgroud)