首页 > 其他分享 >Golang - 三个点‘...‘的用法

Golang - 三个点‘...‘的用法

时间:2024-03-13 13:23:38浏览次数:27  
标签:... string str1 用法 Golang var main fmt

用法1)主要是用于函数有多个不定参数的情况,可以接受多个不确定数量的参数(可选参数)

package main

import "fmt"

func test(args ...string) { // 可以接受任意个string参数
    for _, v := range args {
        fmt.Println(v)
    }
}

func main() {
    var str = []string{
        "c1",
        "c2",
        "c3",
        "c4",
    }
    test(str...) // 切片被打散传入
}

用法2)slice可以被打散进行传递(切片传递)

package main

import "fmt"

var str1 = []string{
    "q1",
    "q2",
    "q3",
}
var str2 = []string{
    "q",
    "c1",
    "c2",
    "c3",
}

func main() {
    str1 = append(str1, str2...) // str1的元素被打散一个个append进str2
    fmt.Println(str1)
}

标签:...,string,str1,用法,Golang,var,main,fmt
From: https://www.cnblogs.com/beatle-go/p/18070403

相关文章

  • Golang - grpc和http的区别
    gRPC和HTTP都是网络协议,但是它们之间存在一些显著的区别。1、传输协议HTTP使用文本基础的协议,而gRPC使用的是二进制协议,这意味着gRPC数据包更小,传输效率更高。另外,gRPC使用HTTP/2协议,支持多路复用,从而可以更好地处理并发请求。2、性能差异gRPC在性能方面优于HTTP。由于使用了二进......
  • golang,再也不用管道了,exec.Command("bash", "-c", "ps -elf | grep xxx")
    摘自:https://www.jb51.net/article/249001.htmfuncSystem_CmdCombinedOutput(cmd_linestring)([]byte,error){mutex_exec.Lock()defermutex_exec.Unlock()//old_handler:=C.set_SIGCHLD_DFL()//自己实现,用c语言保存当前的信号屏蔽字//def......
  • const的用法
    1、修饰局部变量constintn=5;intconstn=5;这两种写法都是一样的,都是表示变量n的值不能被改变了!但在用const修饰前,一定要给变量初始化!否则就不能再进行赋值了。2、修饰指针与指针常量2.1常量指针常量指针是指针指向的内容是常量。constint*n;intconst*n;数据......
  • golang 协程池
     packagemainimport("fmt""time")typeTaskstruct{ffunc()error}func(tTask)exec()error{returnt.f()}funcNewTask(funfunc()error)*Task{return&Task{f:fun,}}typePoolstruct......
  • 探究WPF中文字模糊的问题:TextOptions的用法
    有网友问WPF中一些文字模糊是什么问题。之前我也没有认真思考过这个问题,只是大概知道和WPF的像素对齐(pixelsnapping)、抗锯齿(anti-aliasing)有关,通过设置附加属性TextOptions.TextFormattingMode或者TextOptions.TextRenderingMode来解决。这次我也查了下资料,了解了这几个附加属性......
  • 【转】Command Pattern in Go (Golang)
     原文: https://www.sohamkamani.com/golang/command-pattern/ packagemainimport"fmt"//TherestaurantcontainsthetotaldishesandthetotalcleaneddishestypeRestaurantstruct{ TotalDishesint CleanedDishesint}//`NewRestaurant......
  • [转]Golang Functional Options Pattern
     原文: https://golang.cafe/blog/golang-functional-options-pattern.html-------------------- GolangFunctionalOptionsPatternTheGo(Golang)FunctionaOptionsPatternisaway,apatternofstructuringyourstructsinGobydesigningaveryexpressivea......
  • UVM宏解释+odt文件转doc+merge命令和difflib+python调用命令+clog2和系统函数+java添
    UVM宏解释UVM_DISABLE_AUTO_ITEM_RECORDINGhttps://blog.csdn.net/MGoop/article/details/127295965itemrecord的方法主要是用于记录事务信息的,原理是调用accept_tr,begin_tr,end_tr。似乎和波形上显示出各个事务相关。默认情况下,在调用get_next_item()和item_done()时自动......
  • golang练习题
    看到一个网站,上面每天发布一道golang练习题,正好拿来练习,顺便整理记录下来。iota,类似枚举值,每个const从0开始计数 String方法相当于java里的toStringgolang处于安全考虑,对指针运算做了很多限制。map的value是不可以取地址的。 ......
  • golang 接口
    接口学习Go语言中的接口时,以下是你需要关注的主要概念和知识点:在Go语言中使用隐式声明的方式实现接口。只要一个类型实现了接口中规定的所有方法,那么它就实现了这个接口1.接口定义接口是一种类型,定义了一组方法的集合。接口定义的方法不包含实现,只有方法签名。示例:Goty......