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

go 中地图键循环的 ++ 运算符

go 中地图键循环的 ++ 运算符

Go
吃鸡游戏 2023-06-01 16:25:52
微修改了练习以尝试更深入地挖掘。package mainimport (    "fmt"    "strings")func WordCount(s string) map[string]int {    m := make(map[string]int)    x := strings.Fields(s)    for _, e := range x {        m[e]++    }    return m}func main() {    phrase := "The quick brown fox"    fmt.Println(WordCount(phrase), "length:", len(WordCount(phrase)))}对我来说没有意义的是 ++ 运算符在向地图添加新元素时在此上下文中的工作方式。++运算符的定义:自增运算符。它将整数值增加一。在这种情况下,++ 运算符增加映射长度的整数值,然后将 e 元素添加到新的映射长度?
查看完整描述

1 回答

?
跃然一笑

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

aint中 values的默认值为. 因此,当您遍历并调用时,扩展版本将是map0xm[e]++

m[e] = m[e] + 1

换句话说:

m[e] = 0 + 1

当然,如果某个字段重复,则它已经在映射中(某些值 > 0)。

当您在循环后检查地图的长度时,它会给出字符串中唯一字段的数量。


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

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信