如何在golang中只显示多值结果的一个输出

Har*_*rry -2 function return-value go

最近,我研究了Golang可以为函数返回多个结果.所以我写了一个函数:

func store(x, y int) (int, int) {
    return x + y, x - y
}
Run Code Online (Sandbox Code Playgroud)

在此之后我写下面的代码:

func main() {
    a, b := store(6, 4)
    fmt.Println(a, b)
} 
Run Code Online (Sandbox Code Playgroud)

结果是:

10 2

这工作正常.

但是如果我只想打印一个,那么我该怎么办呢?

func main() {
    a, b := store(6, 4)
    fmt.Println(a)
}
Run Code Online (Sandbox Code Playgroud)

结果:

tmp/sandbox683412938/main.go:12:19:b声明并且未使用

另外,为什么我不能写:

func main() {
    a := store(6, 4) // ???
    fmt.Println(a)
}
Run Code Online (Sandbox Code Playgroud)

请指导我.

Aze*_*eem 8

您可以使用下划线占位符(空白标识符),如下所示:

a, _ := store(6, 4)
fmt.Println(a)
Run Code Online (Sandbox Code Playgroud)

输出:

10

这是完整的例子:

package main

import (
    "fmt"
)

func store(x, y int) (int, int) {
    return x + y, x - y
}

func main() {
    a, _ := store(6, 4)
    fmt.Println(a)
}
Run Code Online (Sandbox Code Playgroud)

实例:https://play.golang.org/p/Z366BhtRA0