我想把一个float64
类型的数字,比如说1.003
,转换成整数1003
。我的实现方法是将float64
乘以1000
,然后将其转换为int
。
package main
import "fmt"
func main() {
var f float64 = 1.003
fmt.Println(int(f * 1000))
}
但是当我运行这段代码时,得到的结果是1002
而不是1003
。这是因为Go自动将1.003
存储为1.002999...
在变量中。那么在Golang中进行这种操作的正确方法是什么?