在 Go 语言中,下划线 _ 是一个特殊的标识符,被称为 “空白标识符” 或 “匿名变量”。它有几个常见的用途:

1. 引入包但不使用

在Go语言中,如果我们想导入一个包,但没有使用其中的任何函数、变量或类型,就会出现编译错误。但我们有需要使用这个包的init函数,这时,我们可以使用_来忽略这个包。示例代码如下:

import _ "fmt"

在上面的代码中,_ "fmt"表示引入fmt包,但我们并不打算在代码中直接使用这个包的其他部分。

2. 占位符/忽略值

对于函数返回的结果,如果我们不关心其中的某些值,那就可以使用_来作为占位符。示例代码如下:

_, err := io.Copy(dst, src)

在上面的代码中,我们不关心Copy函数返回的第一个值 (字节数),只关心第二个值 (error)。

3. For range 循环中忽略键或值

在使用range去遍历一个数组,切片,通道或者map,此时如果我们不需要关心元素的索引,那就可以使用_来忽略索引。示例代码如下:

for _, value := range array {
    fmt.Println(value)
}

在上述代码中,我们只关心值,而不关心索引,所以使用了_来忽略索引。


孟斯特

声明:本作品采用署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)进行许可,使用时请注明出处。

Author: mengbin

blog: mengbin

Github: mengbin92

cnblogs: 恋水无意

腾讯云开发者社区:孟斯特