【Go入門】if文による条件分岐とtrue, false

Go
スポンサーリンク

ここではGo言語のif文の基本について見ていきます。

if文では、条件が成立した時に処理を実行します。

スポンサーリンク

if文

if文は次の形で利用します。

if 条件式 {
		処理コード
	}

条件式が成立した場合に、つまりtrueの場合に処理コードを実行するという形です。

具体的なコードで見てみましょう。

package main

import "fmt"

func main() {

	x := 10

	if x > 0 {
		fmt.Println("正の数です。")
	}

}

変数xに初期値を代入しています。

if文では、xが正の場合という条件を与えています。

この条件が成立する時に、ここではPrintln()で出力しています。

ここではxが10なので条件が成立しているので、次のように出力されます。

正の数です。

このコードは次のようにも書くことができます。

package main

import "fmt"

func main() {

	if x := 10; x > 0 {
		fmt.Println("正の数です。")
	}

}

ifキーワードの後に初期化式を置き、セミコロンに続けて条件式を記述します。波括弧{}のブロック内に処理コードを書いているのは同じです。

実行結果は同じです。

スポンサーリンク

if文とture, false

if文は条件式がtureの場合に処理を行う構文なので、次のように書くこともできます。

import "fmt"

func main() {

	if 10 == 10 {
		fmt.Println("出力:10")
	}

	if true {
		fmt.Println("出力:true")
	}

	if false {
		fmt.Println("出力:false")
	}

	if !true {
		fmt.Println("出力:!true")
	}

	if !false {
		fmt.Println("出力:!false")
	}

}

if文の条件式を並べてみました。

最初の等価の場合以外はture、falseで記述しています。これに否定の「!」を組み合わせています。

これを実行すると次の結果になります。

出力:10
出力:true
出力:!false

条件式の評価がtrueとなるものだけ出力されているのがわかります。

Goの論理値型の演算も合わせて見ておくとよいでしょう。

スポンサーリンク

Pythonコードで書くと…

Pythonでif文のコードを同様な形で書いてみます。

上の2つの例を合わせて書いてみます。

def main():

    x = 10

    if x > 0:
        print("正の数です。")

    if 10 == 10:
        print("出力:10")

    if True:
        print("出力:True")

    if False:
        print("出力:False")

    if not True:
        print("出力:not True")

    if not False:
        print("出力:not False")


if __name__ == "__main__":
    main()

ほぼGoと同じ書き方と言っていいですね。True, Falseが大文字で始まるのと、否定が「!」ではなく「not」であるだけです。

実行結果は以下のとおり。

正の数です。
出力:10
出力:True
出力:not False
スポンサーリンク

最後に

ここでは、Go言語のif文について基本的な処理を見てきました。

if文に続けて条件式を記述し、波括弧{}に処理コードを書きます。条件式の評価がtrueの場合に処理コードを実行します。

if文の条件式の評価は、論理値型の演算の知識が使えます。

else if, elseブロックを使った複数の分岐処理についてはこちらからどうぞ。

Go
スポンサーリンク
CodeGraffitiをフォローする

タイトルとURLをコピーしました