Go 数组赋值问题

时间:2025-03-03 12:25:03
package main import "fmt" type Student struct { Name string Age int } func main() { data := make(map[string]*Student) list := []Student{ {Name:"a",Age:1}, {Name:"b",Age:2}, {Name:"c",Age:3}, } // 错误 都指向了最后一个v // a c 3 // b c 3 // c c 3 // for _,v := range list { // data[] = &v // } // 正确 // a a 1 // b b 2 // c c 3 for k,v := range list { data[v.Name] = &list[k] } for k,v := range data { fmt.Println(k,v.Name,v.Age) } }