map和切片的组合定义
import (
"fmt"
"strings"
)
元素为map的切片
var userInfo = make ( [ ] map [ string ] string , 2 , 2 )
if userInfo[ 0 ] == nil {
userInfo[ 0 ] = make ( map [ string ] string )
userInfo[ 0 ] [ "name" ] = "lili"
userInfo[ 0 ] [ "age" ] = "20"
userInfo[ 0 ] [ "sex" ] = "女"
}
if userInfo[ 1 ] == nil {
userInfo[ 1 ] = make ( map [ string ] string )
userInfo[ 1 ] [ "name" ] = "liwang"
userInfo[ 1 ] [ "age" ] = "30"
userInfo[ 1 ] [ "sex" ] = "男"
}
fmt. Println ( userInfo)
元素为切片的map
var studentData = make ( map [ string ] [ ] string )
studentData[ "age" ] = [ ] string {
"12" ,
"13" ,
"15" ,
}
studentData[ "name" ] = [ ] string {
"xiaomi" ,
"xiaoli" ,
"xiaowang" ,
}
studentData[ "sex" ] = [ ] string {
"女" ,
"女" ,
"男" ,
}
fmt. Println ( studentData)
小应用 统计单词出现的次数
var str = "hello world hello world do do do"
var strSlice = strings. Split ( str, " " )
var mapStr = make ( map [ string ] int )
for _ , v := range strSlice {
mapStr[ v] ++
}
fmt. Println ( mapStr)