如何在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