在 Go 中如何创建类似 Java 泛型数组的结构?

在 go 中如何创建类似 java 泛型数组的结构?

java 风格在 go 中创建泛型数组

java 的泛型数组允许存储不同类型的数据,这是一个强大的特性。那么,如何以类似的方式在 go 中创建一个泛型数组呢?

解决方案:使用 interface{}

在 go 中,无法直接创建具有不同类型元素的数组。但是,我们可以使用 interface{} 类型作为元素类型,它可以容纳任何类型的值。

var s []interface{}
s = append(s, 1, "1", true)

注意事项

虽然这可以让你在一个数组中存储不同类型的值,但需要注意以下事项:

  • 由于 interface{} 是一种动态类型,因此需要进行类型断言以使用存储的值。
  • 使用 interface{} 会牺牲类型安全,因为它不再强制执行特定的类型。

以上就是在 Go 中如何创建类似 Java 泛型数组的结构?的详细内容,更多请关注其它相关文章!