超小ネタ: Goでif式をやりてんじゃ。
※if「式」のことです。if「文」のことじゃないです。
Goには現在if式がないので実際には無理ですが、無名関数を使うとこんな風にif式っぽく書けます。
queryParam := c.QueryParam("queryParam")
param, err := func() (int, error) {
if queryParam == "" {
return defaultValue, nil
}
return strconv.Atoi(queryParam) //Atoiは結果とerrorの2値を返す
}()
──完。
余談
queryParam := c.QueryParam("queryParam")
var param int
var err error
if queryParam == "" {
param = defaultValue
} else {
param, err = strconv.Atoi(queryParam)
}
こんな風にifの前で変数宣言して代入というやり方が多分普通ですが、なんとなく無名関数を使う方がif式っぽくて気持ちいい気がします。
Author And Source
この問題について(超小ネタ: Goでif式をやりてんじゃ。), 我々は、より多くの情報をここで見つけました https://qiita.com/ryo0/items/9a5cd97d2a5af15af22d著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .