为了账号安全,请及时绑定邮箱和手机立即绑定

为什么不能将字符串转换为由 go-redis 获取的值的 int?

为什么不能将字符串转换为由 go-redis 获取的值的 int?

Go
慕哥6287543 2022-08-01 14:58:28
我在 go 中使用 go-redis 从 Redis 获取列表数据。IDs, err := redisClient.LRange("ID", 0, -1).Result()if err != nil {    panic(err)}fmt.Println(IDs)for _, ID := range IDs {    id, _ := strconv.Atoi(ID)    fmt.Println(id)}在第一次打印中,它可以获得正确的数据:37907613574562269007但是第二次打印得到了全部0:0000如果不转换为 int,则为字符串:cannot use ID (type string) as type int in argument所以我想用它作为整数。我在go中用一个纯列表进行了测试:var a [4]stringa[0] = "1"a[1] = "2"a[2] = "3"a[3] = "4"for _, i := range a {    id, _ := strconv.Atoi(i)    fmt.Println(id)}它可以在没有单独使用新行的情况下工作:1234所以 的返回的不仅仅是字符串。https://godoc.org/github.com/go-redis/redis#Client.LRange它。那么如何转换它呢?go-redis.LRange("ID", 0, -1).Result()*StringSliceCmd
查看完整描述

1 回答

?
HUX布斯

TA贡献1876条经验 获得超6个赞

这是因为错误的类型。

.LRange("ID", 0, -1).Result()返回。它应该被转换为循环ids。[]stringids := strings.Fields(strings.Join(IDs, ""))


查看完整回答
反对 回复 2022-08-01
  • 1 回答
  • 0 关注
  • 107 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号