package main import ( "fmt" "errors" ) func main() { erro1 := fmt.Errorf("%s", "this is a nomal erorr") fmt.Println("error1 = ", erro1) error2 := errors.New("this is a normal error") fmt.Println("eror2 = ", error2) }
这里打印的结果就很简单了,就是打印了两行的this sis a normal error
但是这里需要强调的是error里的New方法,可以看看源码
通过源码我们可以学习到一个规范的接口是怎么写成的
package main import ( "errors" "fmt" ) func MyDiv(a, b int) (result int, err error) { //这里定义了err为error的接口类型 err = nil if b == 0 { err = errors.New("分母不能为0") }else { result = a / b } return } func main() { result, err := MyDiv(10, 2) if err != nil { fmt.Println("error = ", err) }else { fmt.Println("reuslt = ", result) } }
如果b为不为零输结果,如果为0则输出报错信息