我最初尝试过这个,但是没有为 float64 定义 % 运算符。
func main(){
var a float64
a = 1.23
if a%1 == 0{
fmt.Println("yay")
}else{
fmt.Println("you fail")
}
}
最佳答案
假设您的数字适合 int64
,您可以将浮点值与转换后的整数值进行比较,看看它们是否相同:
if a == float64(int64(a)) {
fmt.Println("yay")
} else {
fmt.Println("you fail")
}
否则你可以使用math.Trunc
函数详解here , 像这样:
if a == math.Trunc(a) {
fmt.Println("yay")
} else {
fmt.Println("you fail")
}
那个应该在整个 float64
域中工作。
关于go - 如何在 Go 中测试一个 float 是否为整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41945572/