条件分岐とは、例えば「 今日は天気が晴れだったら洗濯物を干そう 」 とか 「 二十歳になったのでお酒を飲もう 」 など、その行動を行うための条件を設定する事があります。 19歳であればまだお酒が飲めないが、20歳なのでお酒を飲むという行動を行えるといった具合に、 特定の条件によって処理が変わることをこのように呼びます。
コンピュータの世界で言えば、「 変数の内容が 1だったら処理Aを行い、変数の内容が 2だったら処理Bを行う」といった事を指します。
if文とは、ある条件によって行なう処理を分岐させたいときに使用します。 ある条件を指定してその条件に合うのか否かを判定し、その判定に応じた処理をしたい時に使います。 if文の基本的な使用方法を記述しますので、それぞれどのような動作をするのか見てください。
ある条件が真の時だけ特定の処理を実行したい場合に使用
[ 表記法 ]
if ( 条件 ) {
//条件が真であれば実行される。
}
真の時/偽の時の処理も記述出来ます。 ( else )
[ 表記法 ]
if ( 条件 ) {
//条件が真の時に実行される。
} else {
//条件が偽の時に実行される。
}
[ フローチャート ]

[ 例 ]
if (objInstance instanceof Animal) {
objInstance.run();
}
上記は instanceof演算子と組み合わせた条件分岐の使い方になります。 例では Animalというクラスまたはインターフェースを objInstanceに格納されているインスタンスが実装またはインプリメントしていれば 「真」を返し、run() というメソッドを実行します。
コンパイル時にデータ型が決定されない Javaでは、実行時にその変数が実際に何のインスタンスなのかを知る必要が出てくる場合があります。 そのような時に結構使用する記述方法なので覚えておきましょう。
真の条件を複数記述する場合( else if )
[ 表記法 ]
if ( 条件1 ) {
// 条件1が真の時に実行する処理
} else if ( 条件2 ) {
// 条件2が真の時に実行する処理
} else {
// 1、2のどちらも真でない時実行される
}
[ フローチャート ]
ちょっと省略した記述
[ 表記法 ]
if ( 条件 )
System.out.println("Hello");
else
System.out.println("Good morning");
C言語などと同じで、if文の後に続くステートメントが一行の時は処理ブロックを示す {} を省略して記述する事が出来ます。 ただしステートメントが 2行以上続く場合に {} を省略することは出来ません。