【Unity入門】ifで条件分岐をしてみる
この記事の目次
ifとは
ifとは条件分岐をするための文法です。
条件分岐というのは『条件に応じて異なる処理をする』ことをいいます。
ifは
if (条件1) { 条件1の処理 } else if (条件2) { 条件2の処理 } else { それ以外の処理 } |
といったように記述します。
実際に使ってみる
準備
それでは、ifを使ってみましょう。
まずは、以前作成した、『C# Basics』というプロジェクトを開いてください。
『C# Basics』を開いたらifを使うシーンを作りましょう。
Scenesフォルダの中に作成します。
ProjectウィンドウでScenesフォルダを選択しましょう。
選択した状態で『+』ボタンを押します。
色々と出てくるので、『Scene』をクリックしましょう。
すると、Scenesフォルダの中に新しくSceneが作成されます。
Sceneの名前を『If』に変更しておきましょう。
今回は『If』の中でクラスを作りたいので、Sceneを移動します。
『If』をダブルクリックしましょう。
すると、Sceceを移動することができます。
Hierarchyウィンドウを見ると、現在のSceneが『If』に変わっていますね。
次にifを使うためのスクリプトを作っておきましょう。
Scriptsフォルダを選択してください。
選択した状態で『+』ボタンを押しましょう。
色々と出てくるので『C# Scripts』を選択します。
すると、新しくスクリプトが作成されます。
名前が確定してしまう前に『IfScript』と変更します。
名前を変更したら、スクリプトを編集していきましょう。
IfScriptをダブルクリックしてください。
すると、VIsual Studioが起動して、IfScriptを編集できるようになります。
スクリプトはScene上にあるオブジェクトに追加することで呼び出されるので、適当に追加しておきましょう。
IfScriptをMain Cameraにドラッグ&ドロップします。
すると、Main CameraにIfScriptが追加されます。
ifを使ってみる
それでは、ifを使ってみましょう。
もし数字が10なら『数字は10』、30なら『数字は30』、それ以外なら『数字は10でも30でもない』とコンソールに表示してみようと思います。
Start関数の中に
int number = 30; if (number == 10) { Debug.Log(10);} else if (number == 30) { Debug.Log(30);}else{ Debug.Log(“それ以外”); } |
と記述しましょう。
コードについて説明しておきます。
まずifは一番上の条件と合致するかを確かめます。
今回は変数numberの値を『30』としているので、
一番上の条件である『number == 10』には合致しません。
一つ目の条件に合致しなかった場合、二つ目の条件と合致するかを確かめます。
二つ目の条件は『number == 30』という条件であり、条件が合致します。
なのでifの中の『Debug.Log(30)』が呼ばれ、
再生すると『30』とコンソールに出力されるはずです。
実際に『30』と出力されるのか確かめてみましょう。
スクリプトを保存して、Unityエディタに戻り、再生ボタンを押しましょう。
再生してみると、予想通りコンソールには『30』と出力されましたね。
今回はnumberという変数に『30』を入れましたが、
他の値を入れたらどうなるのか確かめてみましょう。
numberの値を『30』から『290』に変更してみてください。
このように記述した場合、『number == 10』という条件と
『number == 30』という条件には
合致しないので、elseが呼ばれます。
その結果、elseの処理である
Debug.Log(“それ以外”); |
が呼ばれ、コンソールには『それ以外』と出力されるはずです。
実際にそうなるのか再生して確かめてみましょう。
スクリプトを保存し、Unityエディタに戻り、再生ボタンを押してください。
再生してみると予想した通り、『それ以外』と出力されますね。
このようにifを使えば条件に応じた処理をすることができます。