假設(shè)我有數(shù)組A并且B在 Go 中。什么是追加的所有值最快的方式B來A?
1 回答

蕪湖不蕪
TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超7個(gè)贊
Go 中的數(shù)組是次要的,切片是要走的路。Go 提供了一個(gè)內(nèi)置append()函數(shù)來附加切片:
a := []int{1, 2, 3}
b := []int{4, 5}
a = append(a, b...)
fmt.Println(a)
輸出:
[1 2 3 4 5]
在Go Playground上試一試。
筆記:
Go 中的數(shù)組是固定大小的:一旦創(chuàng)建了數(shù)組,就無法增加其大小,因此無法向其追加元素。如果必須這樣做,則需要分配一個(gè)新的更大的數(shù)組;大到足以容納 2 個(gè)數(shù)組中的所有元素。切片更加靈活。
Go 中的數(shù)組是如此“不靈活”,以至于即使數(shù)組的大小也是其類型的一部分,因此例如數(shù)組類型[2]int與類型不同,[3]int因此即使您創(chuàng)建一個(gè)輔助函數(shù)來添加/附加類型的數(shù)組,[2]int您也無法' t 使用它來附加類型的數(shù)組[3]int!
- 1 回答
- 0 關(guān)注
- 185 瀏覽
添加回答
舉報(bào)
0/150
提交
取消