我最初尝试过此方法,但是未为float64定义%运算符。
func main(){ var a float64 a = 1.23 if a%1 == 0{ fmt.Println("yay") }else{ fmt.Println("you fail") } }
假设您的数字适合int64,则可以将浮点值与转换后的整数值进行比较,以查看它们是否相同:
int64
if a == float64(int64(a)) { fmt.Println("yay") } else { fmt.Println("you fail") }
否则,您可以使用此处math.Trunc详述的功能,例如:
math.Trunc
if a == math.Trunc(a) { fmt.Println("yay") } else { fmt.Println("you fail") }
那应该在整个float64领域内工作。
float64