go语言中双层映射问题 10C

package main

import (
"fmt"
)

type strs struct {
ss []string
}

func main() {

var mm [2]strs
mm[0].ss = append(mm[0].ss, "james")
mm[1].ss = append(mm[1].ss, "james")

fmt.Println(mm[0].ss)
fmt.Println(mm[1].ss)

var pp map[string][2]strs

//为什么这两句话编译就有问题,说不能赋值?
//pp["james"][0].ss = append(pp["james"][0].ss, "jsdaf")
//pp["james"][1].ss = append(pp["james"][1].ss, "jsdaf")

fmt.Println(pp["james"][0].ss)
fmt.Println(pp["james"][1].ss)

}

2个回答

把pp换成ss看看。pp并没有被初始化。里面没有james

你的pp是map,key需要先-初始化

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问