【Go言語】もしも?…な If - その1

2018年11月6日GoGo言語,if,制御文Go,if,制御文

今回も制御文なお題ですね。

というわけで、最近週一ペースになりつつある Go の記事です。

今回のお題は「If」

「A Tour of Go」の該当ページはこちらでーす。(´・ω・)つhttps://go-tour-jp.appspot.com/flowcontrol/5

A Tour of Go - If のページ
A Tour of Go – If のページ

内容を見てみる

ついに出てきたって感じの if 文ですね。

さっと読みつつポイントを抜き出してみますと…

  • if 文の書き方

つーわけで、if 文の基礎的な内容が書いてありました。

それと、ページ内では説明されていませんが「そもそも if とは?」を説明しますと……

if文(イフぶん)はプログラミング言語において、真理値に従って「もしXならば、Yせよ、さもなくばZせよ」というような条件実行の「文 (プログラミング) 」で、制御構造のひとつである。if else文と呼ばれることもある。

Wikipedia – if文 から引用

となっているわけです…引用ですけどね。(´・ω・`)

そして、簡単な例題で if を表現してみるとこうなります。

if とは…
if とは…

これを Go 的な表現で書くわけですが~、その書き方を見てみます。

if 文の書き方

基本はこんな風に書くようです。

if文の基本的な書き方
if文の基本的な書き方

C言語などとは違い <条件式> に丸かっこ(()←これね)は不要みたいです。

条件に一致(もしくは不一致)したときは中括弧({}←これね)の中の処理が実行されます。

さらに条件を追加する else if なんてのもあったりします。

また、実際の if 文はというと…、先程の例題を使って if を書いてみますと…

こんな感じになりますね。

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
}

 

Language Specification – if statements

今回のまとめ

はじめての if っぽく書き方だけの内容でしたね。

条件の部分で使える比較演算子なんかもあるんですけど~…、まぁ~そのうちやるっしょ?っというわけでっ、今回はこのへんでおしまい!

それじゃ~、また次回~。٩(๑´3`๑)۶