如何在Go語言中連線兩個切片?
每當我們談到將元素附加到切片時,我們都知道我們需要使用`append()`函式,該函式將切片作為第一個引數,並將我們想要附加的值作為下一個引數。
語法如下所示。
sl = append(sl,1)
我們可以用同樣的命令附加多個值到切片“`sl`”,而不是隻附加一個數字。
考慮以下程式碼片段。
sl = append(sl,1,2,3,4)
以上程式碼在**Go**中可以正常工作。
當涉及到將一個切片附加到另一個切片時,我們需要使用**可變引數**函式簽名點。在Go語言的可變引數函式中,我們可以向函式傳遞可變數量的引數,並且可以使用引數名稱訪問所有數字。
讓我們考慮一個簡單的例子,我們將多個數字新增到整數切片中。
示例1
考慮以下程式碼。
package main
import "fmt"
func main() {
sl := []int{1, 2, 3}
sl = append(sl, 5, 6, 7)
fmt.Println(sl)
}輸出
執行程式碼時,將產生以下輸出:
[1 2 3 5 6 7]
現在,假設我們不是傳遞數字,而是將切片字面量作為引數傳遞給`append`函式。
需要注意的是,要傳遞切片字面量,我們需要使用三個點(...)。
示例2
考慮以下程式碼。
package main
import "fmt"
func main() {
sl := []int{1, 2, 3}
sl = append(sl, []int{4, 5}...)
fmt.Println(sl)
}輸出
執行程式碼時,將產生以下輸出:
[1 2 3 4 5]
我們也可以傳遞一個切片,而不是像上面示例中那樣傳遞切片字面量。
示例3
考慮以下程式碼。
package main
import "fmt"
func main() {
sl := []int{1, 2, 3}
sl = append(sl, 5, 6, 7)
sl1 := []int{0}
sl1 = append(sl1, sl...)
fmt.Println(sl)
fmt.Println(sl1)
}輸出
執行程式碼時,將產生以下輸出:
[1 2 3 5 6 7] [0 1 2 3 5 6 7]
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP