10,golang 错误处理,panic终止程序执行慎用
发布时间:2020-12-16 09:21:20 所属栏目:大数据 来源:网络整理
导读:package mainimport ( "errors" "fmt" "io/ioutil")type error interface{ Error() string}/* golang中错误处理,在golang中错误是一种类型,默认如果没有发生错误,返回的错误值讲为nil if err !=nil{ something went wrong } golang 的错误类型error 可以
package mainimport ( "errors" "fmt" "io/ioutil")type error interface{ Error() string}/* golang中错误处理,在golang中错误是一种类型,默认如果没有发生错误,返回的错误值讲为nil if err !=nil{ something went wrong } golang 的错误类型error 可以像其他一样在函数之间传递错误 panic 让golang程序马上停止执行,慎用。除非极端情况程序将带来很多问题或者发生了无法处理的错误 if err!=nil{ panic(err) } golang 语言不支持 try --catch--finally控制结构*/func main(){ var file []byte var err error file,err =ioutil.ReadFile("foo.txt") if err!=nil{ fmt.Println("111") fmt.Println(err) return } fmt.Println(string(file)) //文件中读出来的字符串是一个byte类型的数组 []byte,需要string转换成文字 err1 :=errors.New("Something went wrong") if err1 !=nil{ fmt.Println(err1) } panic("oh no ican do no more.Goodby") //panic可以导致程序立即停止执行,慎用 name,role:="Richard Jupp","Drummer" err2:=fmt.Errorf("The %v,%vquit",role,name) if err2!=nil{ fmt.Println(err2) }}func Half(numberToHalf int)(int,error){ if numberToHalf%2 !=0 { return -1,fmt.Errorf("Cannot half %v",numberToHalf) } return numberToHalf/2,nil} (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |