golang中没有固定长度的数组[duplicate]

busg9geu  于 2023-01-18  发布在  Go
关注(0)|答案(3)|浏览(201)
    • 此问题在此处已有答案**:

Dynamically initialize array size in go(3个答案)
两年前关闭了。
我最近刚开始使用golang,在使用arrays时遇到了一个问题,我没有元素的数量。有没有办法初始化一个没有大小的数组,然后在最后追加元素?在其他编程语言中,比如c++,这里有vectorsarrays可以使用,我们可以通过push_backpush这样的函数来添加元素,有什么方法可以做到这一点,或者有没有一个库可以做到这一点?谢谢!

jslywgbw

jslywgbw1#

a := []int{}
a = append(a, 4)
fmt.Println(a)
iaqfqrcu

iaqfqrcu2#

您可以根据自己的需要使用slice

array := make([]int, 0)
array = append(array, 1)
array = append(array, 2)

这里,array是int类型数据的切片,初始大小为0。您可以将int类型数据追加append(array, <int-type-data>)

osh3o9ms

osh3o9ms3#

在Golang中,数组始终具有固定长度:
在Go语言中,数组是由特定长度的元素组成的一个编号序列。
(来源:https://gobyexample.com/arrays
如果你想要一个可变长度的灵活性,你可能会想使用一个切片代替:
切片是Go语言中的一种关键数据类型,它为序列提供了比数组更强大的接口。
(来源:https://gobyexample.com/slices
This post on the go blog(虽然很老)对这两种数据类型有一个很好的概述。

相关问题