浮点型比其他语言要差
运算时,计算结果不准
四舍五入时,用的是银行舍入法,和其他语言四舍五入的值对不上。解决方法如下:
1
2
3
4
5
6//四舍五入 取精度
func ToFixed(f float64,places int) float64{
shift := math.Pow(10, float64(places))
fv := 0.0000000001 + f //对浮点数产生.xxx999999999 计算不准进行处理
return math.Floor(fv * shift + .5) / shift
}