教程 go tutorial

多返回值

Go 语言支持函数返回多个值,这是它的一大特色,广泛用于返回结果和错误信息。

1. 多返回值定义

函数返回多个值时,用括号包裹返回类型:

go
func divide(a, b int) (int, int) {
    quotient := a / b
    remainder := a % b
    return quotient, remainder
}

`

2. 多返回值调用

调用时需要用多个变量接收:

go
q, r := divide(10, 3)
fmt.Println(q, r) // 输出:3 1

如果不需要某个返回值,可以使用空白标识符 _:

go
q, _ := divide(10, 3)

3. 错误处理示例

多返回值常用来返回结果和错误:

go
func sqrt(value float64) (float64, error) {
    if value < 0 {
        return 0, fmt.Errorf("负数没有平方根")
    }
    return math.Sqrt(value), nil
}

调用时:

go
result, err := sqrt(-1)
if err != nil {
    fmt.Println("错误:", err)
} else {
    fmt.Println("结果:", result)
}

多返回值让函数设计更加灵活,方便同时返回多个相关信息。