Go言語のif文の基本!条件分岐の書き方とelseの使い方をやさしく解説
生徒
「Go言語で条件によって処理を変えるにはどうすればいいんですか?」
先生
「Go言語ではif文を使って、ある条件が成立したときにだけ特定の処理を行うことができます。」
生徒
「じゃあ、条件が当てはまらないときはどうなるんですか?」
先生
「そのときはelseを使って、条件に当てはまらなかった場合の処理を書くことができますよ。それでは基本から見ていきましょう!」
1. if文とは?Go言語で条件を分ける仕組み
Go言語のif文は、「もし〜なら〜する」というように、ある条件が成り立つときにだけ特定の処理を実行するための命令です。たとえば、「温度が30度以上なら『暑い』と表示する」などのような使い方をします。
パソコンを使ったことがない方でも安心してください。ifという単語は「もし〜なら」と覚えると理解しやすくなります。
2. Go言語のif文の基本構文
まずはGo言語でのif文の基本的な書き方を見てみましょう。
if 条件 {
// 条件がtrue(正しい)ときに実行される処理
}
ここでの「条件」は、例えば「気温が30以上」や「数字が0より大きい」などです。中かっこ({})の中に書かれた部分が、条件を満たすときだけ実行されます。
3. if文の具体的な使用例
では、具体的なサンプルを見てみましょう。例えば、年齢が20歳以上かどうかを判定するプログラムです。
package main
import "fmt"
func main() {
age := 20
if age >= 20 {
fmt.Println("あなたは大人です")
}
}
この例では、変数ageが20以上であるかをチェックしています。もしageが20以上なら、「あなたは大人です」と表示されます。
あなたは大人です
4. else文で条件に当てはまらない場合の処理を書く
if文だけだと、「条件が当てはまらないときは何もしない」ことになります。もし、「20歳未満なら子供と表示したい」といったように、条件に当てはまらなかったときの処理を加えたいときにはelseを使います。
package main
import "fmt"
func main() {
age := 17
if age >= 20 {
fmt.Println("あなたは大人です")
} else {
fmt.Println("あなたは子供です")
}
}
あなたは子供です
elseは「そうでなければ」という意味で、ifの条件がfalse(偽)のときに実行されます。
5. 条件を細かく分けるときは「else if」を使おう
条件が1つだけではなく、複数に分けて判断したいときはelse ifを使うことができます。
たとえば、点数によって評価を分けるプログラムを考えてみましょう。
package main
import "fmt"
func main() {
score := 75
if score >= 90 {
fmt.Println("評価:A")
} else if score >= 70 {
fmt.Println("評価:B")
} else {
fmt.Println("評価:C")
}
}
評価:B
このように、else ifを使うと、段階的な条件分岐ができます。上から順番に条件をチェックして、最初に当てはまったものだけが実行されます。
6. if文の条件に使える比較演算子
条件を作るときには「比較演算子(ひかくえんざんし)」という記号を使います。これは、数字や文字が等しいか、大小関係があるかを判断するための記号です。
==:等しい(イコール)!=:等しくない>:より大きい<:より小さい>=:以上<=:以下
たとえば、if age >= 20は「もし年齢が20歳以上なら」という意味になります。
7. ブロックの中かっこ {} は必須です
Go言語では、ifやelseの後には、必ず{}(中かっこ)を使って処理の範囲を囲む必要があります。他の言語のように省略することはできません。
たとえば、次のように書くとエラーになります。
// 誤った例(Goではエラーになります)
if age >= 20
fmt.Println("大人です")
正しくは、次のように中かっこで囲みます。
if age >= 20 {
fmt.Println("大人です")
}
8. 条件に直接変数を定義する書き方もできる
Go言語の特徴的な書き方として、if文の中で変数を定義しながら条件を書くこともできます。
if score := 80; score >= 70 {
fmt.Println("合格です")
}
合格です
このようにセミコロン(;)で区切って、左で変数を定義し、右でその変数を使った条件を書くことができます。
まとめ
Go言語のif文は、初心者が最初に学ぶ条件分岐の基本としてとても重要な仕組みです。条件が真か偽かによって実行する処理を切り替えることで、さまざまなロジックを表現できます。今回学んだ内容を振り返ると、まずif文そのものが「もし〜なら〜する」という考え方に基づいており、数値の比較や文字列の一致などを判定するために比較演算子を使いました。さらに、else文で条件に合わない場合の処理を書けることや、else ifで細かく条件を分けて段階的に判定できる点も理解できたと思います。 また、Go言語では必ず中かっこを使うという特徴があり、そのおかげでコードのまとまりが明確になり、初心者でも読みやすい構造になっている点も大切なポイントです。条件内で変数を定義する独特の書き方もあり、初めは戸惑うかもしれませんが、慣れると便利に使えるようになります。こうした条件分岐の仕組みは、年齢判定、スコア評価、温度によるメッセージ切り替えなど、日常的な判断をプログラムで表現する場面にとても役立ちます。 条件分岐の考え方を理解できれば、プログラムの動きを自分でコントロールできるようになり、応用として繰り返し処理、関数分岐、エラーチェックなどにもつながっていきます。if文をしっかり身につけることで、Go言語の基礎がより確かなものになるでしょう。
条件ごとに動作を切り替えるサンプルプログラム
以下は、温度に応じてメッセージを変えるif文のサンプルです。
// 気温に応じてメッセージを変えるサンプル
package main
import "fmt"
func main() {
temp := 28
if temp >= 30 {
fmt.Println("とても暑いです")
} else if temp >= 20 {
fmt.Println("すごしやすい気温です")
} else {
fmt.Println("少し寒いかもしれません")
}
}
条件が上から順番に評価され、最初に合ったメッセージだけが表示されます。このように、if文とelse ifを組み合わせることで、現実の判断に近い柔軟なプログラムが作れます。
生徒
「今日のif文の学習で、条件によって処理を変える方法がよく理解できました!実際の生活でも『もし〜だったら』ってよく使いますね。」
先生
「そうですね。条件分岐はプログラムでも日常でも大切な考え方です。特にGo言語では中かっこを必ず使うので、構造が分かりやすいというメリットがあります。」
生徒
「else ifで評価を分けたり、if文の中で変数を定義したりする書き方も面白かったです。最初は難しく見えたけど、使ってみると便利ですね。」
先生
「慣れれば自然に書けるようになりますよ。条件分岐は今後の学習でも繰り返し出てくるので、今回の理解がとても役に立ちます。」
生徒
「次の学習も楽しみです!もっといろいろな条件分岐に挑戦してみます。」