创建错误的最简单方法是使用errors程序包。
errors.New("this is an error")
如果要向错误添加其他信息,该fmt程序包还提供了一种有用的错误创建方法:
var f float64 fmt.Errorf("error with some additional information: %g", f)
这是一个完整的示例,其中错误是从函数返回的:
package main import ( "errors" "fmt" ) var ErrThreeNotFound = errors.New("error 3 is not found") func main() { fmt.Println(DoSomething(1)) //成功!返回nil fmt.Println(DoSomething(2)) // 返回特定的错误消息 fmt.Println(DoSomething(3)) // 返回一个错误变量 fmt.Println(DoSomething(4)) // 返回一个简单的错误信息 } func DoSomething(someID int) error { switch someID { case 3: return ErrThreeNotFound case 2: return fmt.Errorf("this is an error with extra info: %d", someID) case 1: return nil } return errors.New("this is an error") }
在游乐场开放