【Go言語】if文の種類(if-else・else if)と具体例|初心者向け解説

目次

if文とは?

if文は、条件に基づいて処理を分岐させる構文です。

Go言語におけるif文は他言語とよく似ているので、プログラミング経験のある方には理解しやすいかと思います。

基本的なif文

Go言語のif文は他の言語と似ていますが、いくつか特徴があります。

if文の特徴
  • 条件式の周りに括弧 () は不要
  • 条件式は必ずブール値(true/false)を返す必要がある

■形式

if 条件式 {
    // 条件が真の場合に実行される処理
}

■具体例

age := 22

if age >= 20 {
    fmt.Println("成人")
}

if-else文

条件が成立しない場合の処理を指定するには、else句を使います。

■形式

if 条件式 {
    // 条件が真の場合の処理
} else {
    // 条件が偽の場合の処理
}

■具体例

age := 18

if age >= 20 {
    fmt.Println("成人")
} else {
    fmt.Println("未成年")   // 「未成年」と出力される
}

else if

複数の条件による分岐が必要な場合は、else if を使います。

■形式

if 条件式 {
    // 条件が真の場合の処理
} else if {
    // 条件が真の場合の処理
}

■具体例

age := 18

if age >= 20 {
    fmt.Println("成人")
} else if age <= 20 {
    fmt.Println("未成年")   // 「未成年」と出力される
}

初期化ステートメント

Go言語のif文には、条件式の前に初期化ステートメントを記述できる特徴があります.
この構文を使うと、if文のスコープ内でのみ使用する変数を宣言できます。

■形式

if 初期化ステートメント; 条件式 {
    // 処理
}

■具体例

if value := 10; value > 5 {
    fmt.Println("valueは5より大きいです:", value)
}
// ここでvalueは使用できない

この機能は特にエラー処理で役立ちます。

package main

import (
    "fmt"
    "strconv"
)

func main() {
    if num, err := strconv.Atoi("123"); err == nil {
        fmt.Println("変換成功:", num)
    } else {
        fmt.Println("変換失敗:", err)
    }
}
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次