面试题答案
一键面试在Go语言中,error
接口是一个内建接口,其定义为:
type error interface {
Error() string
}
基本的错误处理方式是在函数返回值中返回error
类型的值,调用者检查该值是否为nil
,如果不为nil
则表示发生了错误。
函数中返回错误
下面是一个简单的示例,该函数用于计算两个整数的除法,当除数为0时返回错误:
package main
import (
"fmt"
)
func divide(a, b int) (int, error) {
if b == 0 {
return 0, fmt.Errorf("division by zero")
}
return a / b, nil
}
调用者捕获并处理错误
func main() {
result, err := divide(10, 2)
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("Result:", result)
}
在上述main
函数中,调用divide
函数并检查返回的err
值。如果err
不为nil
,则打印错误信息并提前返回;否则打印计算结果。