9.2 単純なエラーの際の文字列の利用
Goの標準ライブラリには文字列を渡すことでエラーを生成する方法が2つ用意されている
一つ目はerrors.Newを使用する方法
文字列を受け取りerrorを返す
戻されたerrorをfmt.Printlnに渡すとErrorメソッドを自動的に呼び出す
参考:9.1 エラー処理の基本
二つ目はfmt.Errorfを使用する方法
fmt.Printfのverbを使用することができる
verb参考:https://pkg.go.dev/fmt#hdr-Printing
戻されたerrorをfmt.Printlnに渡すとErrorメソッドを自動的に呼び出す
code:go
package main
import (
"fmt"
"os"
)
func doubleEven(i int) (int, error) {
if i%2 != 0 {
return 0, fmt.Errorf("%dは偶数ではありません", i)
}
return i * 2, nil
}
func main() {
result, err := doubleEven(3)
if err != nil {
fmt.Println(err) // 3は偶数ではありません
}
fmt.Println(result) // 0
}