合规国际互联网加速 OSASE为企业客户提供高速稳定SD-WAN国际加速解决方案。 广告
编写好的异常处理 === Go语言提倡快速失败 把要向检测的内容放到最前 ~~~ func division(a,b int) (int,error) { if a >= 0 && b > 0 { c := int(a/b) return c,nil } return 0,errors.New("0 不能") } func TestDivision(t *testing.T) { //i, e := division(3, 4) i, e := division(3, 0) if e != nil { t.Fatal(e.Error()) } fmt.Println(i) } ~~~ ### 如果要对错误后续作判断,需要预先定义错误,然后最比对 ~~~ var ( LessZeroError = errors.New("0错误") ) func division(a,b int) (int,error) { if a >= 0 && b > 0 { c := int(a/b) return c,nil } return 0,LessZeroError } func TestDivision(t *testing.T) { //i, e := division(3, 4) i, e := division(3, 0) if e != nil { t.Fatal(e.Error()) } fmt.Println(i) } ~~~