decimal.Decimal
这个报错是因为将 map[string]decimal.Decimal 定义为 decimal.Decimal 类型,而实际上在 map 中赋值的是未命名的浮点型数值 '0.0001'。Go 语言中,未命名的浮点数值默认是 float64 类型,而 decimal.Decimal 类型是不能直接将 float64 类型的值赋给它的。
要解决这个问题,可以将 map[string]decimal.Decimal 中的 float64 类型的值使用 decimal.NewFromFloat() 函数转换为 decimal.Decimal 类型的值。
例如:
var FilterJunkTrans = map[string]decimal.Decimal{
"USDT": decimal.NewFromFloat(1),
"DAI": decimal.NewFromFloat(1),
"USDC": decimal.NewFromFloat(1),
"TUSD": decimal.NewFromFloat(1),
"HUSD": decimal.NewFromFloat(1),
"BUSD": decimal.NewFromFloat(1),
"TRX": decimal.NewFromFloat(1),
"ETH": decimal.NewFromFloat(0.00001),
"BNB": decimal.NewFromFloat(0.0001),
"WBNB": decimal.NewFromFloat(0.0001),
}
这样就可以将 float64 类型的值转换为 decimal.Decimal 类型的值,解决报错问题。
比较运算
greaterThan