在 Go 中根据浮点数确定整数值
在 Go 中,确定 float64 是否表示整数可能会带来挑战。模运算符 (%) 不能直接用于浮点数。
解决方案 1:比较 Float64 与等效整数
如果您的数字可以放入 int64,请考虑比较浮点数及其转换后的整数value:
if a == float64(int64(a)) { ... }
解决方案 2:利用 math.Trunc
对于整个 float64 域,您可以使用 math.Trunc 函数:
if a == math.Trunc(a) { ... }
例如:
package main import ( "fmt" "math" ) func main() { var a float64 = 2.00 if a == math.Trunc(a) { fmt.Println("yay") } else { fmt.Println("you fail") } }
此代码正确输出当a设置为2.00时“yay”,表示它是一个整数。
以上是如何检查 Go float64 是否代表整数?的详细内容。更多信息请关注PHP中文网其他相关文章!