反射
遍历map
package main
import (
"fmt"
"reflect"
)
func main() {
a := make(map[int]string)
a[0] = "a"
a[1] = "b"
a[2] = "c"
test(a)
}
func test(a interface{}) {
val := reflect.ValueOf(a)
fmt.Println(val)
keys := val.MapKeys()
fmt.Println(keys)
for _, v := range keys {
value := val.MapIndex(v)
//fmt.Printf("key=%v value=%v", k, v)
fmt.Println(value)
}
}
reflect struct with struct
看好函数是不是传的指针。 传的指针用不了fieldbyname
浙公网安备 33010602011771号