今回も制御文なお題ですね。
というわけで、最近週一ペースになりつつある Go の記事です。
今回のお題は「If」
「A Tour of Go」の該当ページはこちらでーす。(´・ω・)つhttps://go-tour-jp.appspot.com/flowcontrol/5

内容を見てみる
ついに出てきたって感じの if 文ですね。
さっと読みつつポイントを抜き出してみますと…
- if 文の書き方
つーわけで、if 文の基礎的な内容が書いてありました。
それと、ページ内では説明されていませんが「そもそも if とは?」を説明しますと……
if文(イフぶん)はプログラミング言語において、真理値に従って「もしXならば、Yせよ、さもなくばZせよ」というような条件実行の「文 (プログラミング) 」で、制御構造のひとつである。if else文と呼ばれることもある。
となっているわけです…引用ですけどね。(´・ω・`)
そして、簡単な例題で if を表現してみるとこうなります。

これを Go 的な表現で書くわけですが~、その書き方を見てみます。
if 文の書き方
基本はこんな風に書くようです。

C言語などとは違い <条件式> に丸かっこ(()←これね)は不要みたいです。
条件に一致(もしくは不一致)したときは中括弧({}←これね)の中の処理が実行されます。
さらに条件を追加する else if なんてのもあったりします。
また、実際の if 文はというと…、先程の例題を使って if を書いてみますと…
package main
import (
"fmt"
)
func main() {
// 入場チケットの有無
ticket := true // true → 持っている false → 持っていない
// 入場チケットはもっていますか?
if ticket == true {
// 持ってる
fmt.Println("どうぞお通りください(*^_^*)")
} else {
// 持っていない
fmt.Println("チケット売り場はあちらでございます(*´∀`*)つ")
}
}
こんな感じになりますね。
if 文のキチンとした文法は言語仕様の方に書いてありますので、詳しくはそちらを見ると良いかと思います。
If statements
“If” statements specify the conditional execution of two branches according to the value of a boolean expression. If the expression evaluates to true, the “if” branch is executed, otherwise, if present, the “else” branch is executed.
IfStmt = “if” [ SimpleStmt “;” ] Expression Block [ “else” ( IfStmt | Block ) ] .
if x > max {
x = max
}
The expression may be preceded by a simple statement, which executes before the expression is evaluated.
if x := f(); x < y {
return x
} else if x > z {
return z
} else {
return y
}
今回のまとめ
はじめての if っぽく書き方だけの内容でしたね。
条件の部分で使える比較演算子なんかもあるんですけど~…、まぁ~そのうちやるっしょ?っというわけでっ、今回はこのへんでおしまい!
それじゃ~、また次回~。٩(๑´3`๑)۶
コメント