go语言之三个点用法

  1. 1 函数可变数量参数
  2. 2 展开slice
  3. 3 数组元素数量
  4. 4 go命令

1 函数可变数量参数

示例:

package main

import "fmt"

func main() {
    //multiParam 可以接受可变数量的参数
    multiParam("jerry", "herry")
    names := []string{"jerry", "herry"}
    multiParam(names...)
}
func multiParam(args ...string) {
    //接受的参数放在args数组中
    for _, e := range args {
        fmt.Println(e)
    }
}

可变参数是函数最右边的参数,普通参数放在左侧,如:

package main

import "fmt"

func main() {
   //multiParam 可以接受可变数量的参数
   multiParam("jerry", 1)
   multiParam("php", 1, 2)
}
func multiParam(name string, args ...int) {
   fmt.Println(name)
   //参数放在args切片中
   for _, e := range args {
      fmt.Println(e)
   }
}

2 展开slice

如上例中将names打散展开,还有种情况就是通过append合并两个slice:

stooges := []string{"Moe", "Larry", "Curly"}
lang := []string{"php", "golang", "java"}
stooges = append(stooges, lang...)
fmt.Println(stooges)

3 数组元素数量

如果忽略数组[]中的数字不设置大小,...指定的长度等于数组中元素的数量,Go语言会根据元素的个数设置数组的大小。

stooges := [...]string{"Moe", "Larry", "Curly"} //等价于stooges := [3]string{"Moe", "Larry", "Curly"}
arr := [...]int{1, 2, 3}
fmt.Println(len(stooges))
fmt.Println(len(arr))

4 go命令

go描述软件包列表时,命令使用三个点作为通配符。
此命令测试当前目录及其子目录的所有软件包:

go test ./...

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至yj.mapple@gmail.com

文章标题:go语言之三个点用法

文章字数:345

本文作者:melonshell

发布时间:2020-03-27, 15:42:15

最后更新:2020-03-27, 16:29:58

原始链接:http://melonshell.github.io/2020/03/27/go11_3dot/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录
×

喜欢就点赞,疼爱就打赏

相册