Go error接口类型

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)
	}
}

猜你喜欢

转载自blog.csdn.net/houyanhua1/article/details/88734100