在go中如何像java一样写泛型类型array?

新手上路,请多包涵

如何在golang中在一个array里可以放int,string,double 多个类型的值?

阅读 2.9k
4 个回答
var s []interface{}
s = append(s, 1, "1", true)

可以这样存但是,你如果要用这里面的东西就要反射判断每一项具体是什么类型了

小伙子,用结构体吧,命名成员比匿名成员更有意义,更少的bug,更好的可阅读性。
少学python那一套,舒服当时写代码的自己,苦了维护代码的所有人。

使用 interface{} 然后使用 reflect 包反射来判断类型. 不然等到 Golang 1.18发布吧.虽然才发不到1.16.. 本来泛型在 1.17就要支持的,现在又推迟到了1.18.

新手上路,请多包涵

理论上可以interface来存储。
但这样会破坏静态语言带来的好处,并不建议使用。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题