error接口类型是go语言自带的类型。
demo.go(error接口类型):
package main
import (
"errors"
"fmt"
)
// 除法函数
func dive(a int, b int) (val int, err error) { // error类型是go自带的接口类型
if b == 0 { // 手动处理(捕获)异常
err = errors.New("除数不能为0") // 返回error接口类型的对象
return // val默认0
}
val = a / b
return // err默认nil
}
func main() {
value, err := dive(10 ,2)
fmt.Println(value, err) // 5 <nil>
value, err = dive(10 ,0)
fmt.Println(value, err) // 0 除数不能为0
if err != nil {
fmt.Println(err) // 除数不能为0
} else {
fmt.Println(value)
}
}