// 对于简的map 例如 map[string] string 还是很好掌握的
// 下面这个程序演示复杂的map
package main
import "fmt"
type PersonInfo struct {
ID string
Name string
Address string
}
func main() {
personDB := make(map[string][2]PersonInfo)
//初始化,注意对数组的初始化
personDB["test1"] = [2]PersonInfo{{"12345", "Tom", "aaa"}, {"12346", "Xym", "bbb"}}
//元素查找,这是通用的使用方法
v, ok := personDB["test1"]
if !ok {
fmt.Println(" 没有找到信息")
return
}
//打印出全部值 和各个分值
fmt.Printf("v=%v v[0]=%v v[1]=%v \n", v, v[0], v[1])
// 用range方便的得到其中的值
for i, v := range v {
fmt.Println(i, v, v.ID, v.Address, v.Name)
// 可以做其他的处理
}
}
// 下面这个程序演示复杂的map
package main
import "fmt"
type PersonInfo struct {
ID string
Name string
Address string
}
func main() {
personDB := make(map[string][2]PersonInfo)
//初始化,注意对数组的初始化
personDB["test1"] = [2]PersonInfo{{"12345", "Tom", "aaa"}, {"12346", "Xym", "bbb"}}
//元素查找,这是通用的使用方法
v, ok := personDB["test1"]
if !ok {
fmt.Println(" 没有找到信息")
return
}
//打印出全部值 和各个分值
fmt.Printf("v=%v v[0]=%v v[1]=%v \n", v, v[0], v[1])
// 用range方便的得到其中的值
for i, v := range v {
fmt.Println(i, v, v.ID, v.Address, v.Name)
// 可以做其他的处理
}
}
输出结果:
v=[{12345 Tom aaa} {12346 Xym bbb}] v[0]={12345 Tom aaa} v[1]={12346 Xym bbb}
0 {12345 Tom aaa} 12345 aaa Tom
1 {12346 Xym bbb} 12346 bbb Xym
有疑问加站长微信联系(非本文作者)