我正在尝试访问具有包含属性键的变量的结构属性。例如,我得到了这个结构:type person struct {
name string
age int
}我有一个变量“属性”,其中包含一个字符串值“age”。我想用像人.财产这样的东西访问年龄?你认为它在golang中是可能的吗?
1 回答
当年话下
TA贡献1890条经验 获得超9个赞
如果你正在寻找像你在Python或JavaScript中所做的那样的东西,答案是否定的,Golang不支持在运行时动态字段/方法选择。person[property]
但是你可以用:reflect
import (
"fmt"
"reflect"
)
func main() {
type person struct {
name string
age int
}
v := reflect.ValueOf(person{"Golang", 10})
property := "age"
f := v.FieldByName(property)
fmt.Printf("Person Age: %d\n", f.Int())
}
- 1 回答
- 0 关注
- 69 浏览
添加回答
举报
0/150
提交
取消