C#の複雑な条件式を簡単に書くコツ!論理演算子の活用法
生徒
「C#で複雑な条件を扱う方法ってありますか?たくさんのif文を書くのが大変で…」
先生
「それなら、論理演算子を使って条件をまとめる方法がありますよ!」
生徒
「論理演算子って何ですか?どう使えば簡単になるんでしょうか?」
先生
「では、論理演算子の使い方を丁寧に見ていきましょう!」
1. 論理演算子とは?
C#の論理演算子とは、複数の条件を組み合わせて1つの条件式として扱える記号のことです。例えば「AかつBが正しい」「AまたはBが正しい」といった条件を表すのに使われます。具体的には次の3つがよく使われます。
&&(アンド)…両方の条件が真のときに真になります||(オア)…どちらか一方でも真であれば真になります!(ノット)…条件を反転します(真→偽、偽→真)
2. 複数の条件をひとつにまとめる例
論理演算子を使うと、複雑な条件式をすっきり書けます。例えば、「年齢が18歳以上かつ学生である」という条件は、次のように表現できます。
int age = 20;
bool isStudent = true;
if (age >= 18 && isStudent)
{
Console.WriteLine("18歳以上の学生です。");
}
このように、&&を使えば2つの条件を同時にチェックできます。
3. 条件のいずれかが当てはまればOKなとき
「AまたはBのどちらかが当てはまれば良い」という条件には||(オア)を使います。例えば、「会員登録済みまたはクーポンを持っている人には割引を適用する」場合は次のように書きます。
bool isMember = false;
bool hasCoupon = true;
if (isMember || hasCoupon)
{
Console.WriteLine("割引対象です。");
}
このように||を使うことで、どちらか一方が条件を満たせばOKという判断ができます。
4. 条件を逆にする「!(ノット)」の使い方
条件を反対にしたい場合は、!(ノット)を使います。例えば、「ログインしていない人にログイン画面を表示したい」ときの条件は次のようになります。
bool isLoggedIn = false;
if (!isLoggedIn)
{
Console.WriteLine("ログインしてください。");
}
!は「not(〜ではない)」という意味なので、!isLoggedInは「ログインしていない」となります。
5. 複雑な条件式のネストを避けてスッキリ書こう
論理演算子を使わないと、条件分岐がどんどん深くなり、コードが見にくくなります。例えば、次のように書くとコードが複雑になってしまいます。
// 論理演算子を使わない例
if (x > 0)
{
if (x < 100)
{
Console.WriteLine("xは0より大きく100より小さいです。");
}
}
上記のような場合も、論理演算子を使えば次のように簡潔に書けます。
// 論理演算子でシンプルに
if (x > 0 && x < 100)
{
Console.WriteLine("xは0より大きく100より小さいです。");
}
このように、ネスト(入れ子)を減らすことで、読みやすくエラーの起きにくいコードになります。
6. 論理演算子とif文の組み合わせ練習
次のコードは、複数の条件を組み合わせた実践的な例です。年齢・性別・会員かどうかを組み合わせて条件を判断します。
int age = 25;
string gender = "男性";
bool isMember = true;
if ((age >= 20 && gender == "男性") || isMember)
{
Console.WriteLine("条件を満たしています。");
}
この例では、「20歳以上の男性」または「会員」であれば、条件を満たすというロジックになっています。かっこ( )を使うことで、優先的に評価される部分を明確にできます。
7. 条件式の優先順位に注意しよう
論理演算子を使うときは、演算子の優先順位にも注意が必要です。基本的には次のような順番で処理されます。
!(ノット)&&(アンド)||(オア)
もし優先順位がわかりにくいときは、かっこを使って明確にすると安心です。
8. 条件式を使ったよくある間違い
初心者に多い間違いのひとつが、条件式を単に並べてしまうことです。たとえば、次のようなコードは正しくありません。
// 間違った例
if (x > 0, x < 100)
{
Console.WriteLine("xは0より大きく100未満です。");
}
このような書き方では、条件が正しく評価されません。条件は論理演算子(&&や||)でつなぐ必要があります。
9. 論理演算子を使いこなすコツ
論理演算子を上手に使うためのポイントは、次の3つです。
- ひとつのif文にまとめることでコードをシンプルに保つ
- かっこでグループ化して、優先順位を明確にする
- 変数名をわかりやすくすることで条件が読みやすくなる
これらを意識すれば、複雑な条件式もスッキリ書けるようになります。