2021
06-07
06-07
golang 比较浮点数的大小方式
Golang浮点数比较和运算会出现误差。浮点数储存至内存中时,2的-1、-2……-n次方不能精确的表示小数部分,所以再把这个数从地址中取出来进行计算就出现了偏差。packagemainimport("errors""fmt""github.com/shopspring/decimal")funcFloatCompare(f1,f2interface{})(nint,errerror){varf1Dec,f2Decdecimal.Decimalswitchf1.(type){casefloat64:f1Dec=decimal.NewFromFloat(f1.(float64))switchf2.(ty...
继续阅读 >