本記事では「if文」について解説していきます。
if文の書式
if文の書き方は下の通りです。
if文は「もし〇〇(条件)だったら△△(true処理)する、そうでなかったら◇◇(false処理)する」という条件分岐を行うことができます。
そんなif文の条件式は『bool型』であり、その条件を満たした場合はtrue、満たさなかったらfalseと判定します。
その条件式では「==(等しい)」「>=(以上)」といった関係演算子を用いて指定します。
ポイントif文の「else」部分は省略することが可能です。
その場合、条件を満たした処理だけを行い、条件を満たさなければ飛ばして次の処理に移行します。
処理が1行の場合は「{}」はいらない
if文では条件分岐の処理が1行であった場合は「{}」で囲まなくてもエラーはでません。
例えば、下の11~12行目のように記述することができます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
using System; namespace sample { class Program { static void Main() { var i = 1; if (i == 1) Console.WriteLine("変数iは「1」です"); } } } |
if文の関係演算子
if文の条件式では関係演算子が使われます。
その関係演算子は下の通りです。
演算子 | 記述例 | 意味 |
== | a == b | aとbは等しい |
!= | a != b | aとbは等しくない |
> | a > b | bよりaのほうが大きい |
< | a < b | aはb未満 |
>= | a >= b | aはb以上 |
<= | a <= b | aはb以下 |
条件を満たした場合のコードは下の通りです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
using System; namespace sample { class Program { static void Main() { var i = 5; if (i == 5) { Console.WriteLine("変数iは5です"); } } } } |
上を実行すると「変数iは5です」とコンソールに表示されます。
11行目の「もしも変数iが5だったら」という条件を満たしています。
つぎに条件を満たす場合と満たさない場合の条件分岐が行われるコードです。
下ではfor文で10回ループさせ、ループのたびに変数iの数を1ずつ増やしていきます。
そして、「変数iが6以上になったとき、else処理を行う」ようにしています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
using System; namespace sample { class Program { static void Main() { for(var i=0; i<=10; i++) { if (i <= 5) { Console.WriteLine($"「i={i}」なので5以下です"); } else { Console.WriteLine($"「i={i}」なので6以上です"); } } } } } |
上のコードを実行すると下のような結果が得られます。
if文の論理演算子
if文は複数の条件を指定することができます。
その複数の条件を指定するときには、下のような『論理演算子』を使います。
演算子 | 名称 | 意味 | 記述例 |
&& | AND | 「かつ」を表す | a == 1 && b == 2 |
|| | OR | 「または」を表す | a == 1 \\ b == 2 |
! | NOT | 「でない」を表す | !(a == 1) |
AND … すべての条件を満たしたらtrue
OR … どれか1つの条件を満たしたらtrue
NOT … 指定した条件以外ならtrue
では、上の3つを使ってiF文を試してみます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
using System; namespace sample { class Program { static void Main() { var x = 1; var y = 2; if (x == 1 && y == 2) { Console.WriteLine("AND:「x=1」「y=2」なのでTrueです"); } if (x == 1 || y == 100) { Console.WriteLine("OR:「y=100」ではありませんが、「x=1」なのでTrueです"); } if (!(x == 100)) { Console.WriteLine("NOT:「x=100」ではないのでTrueです"); } } } } |
上のコードを実行すると下のようになります。
スポンサーリンク