C# の三項演算子とは?使い方も紹介

C#の三項演算子とは?使い方も紹介

C# の三項演算子は、if 文や switch 文などの条件分岐を簡潔に表現することができます。

本記事では三項演算子の基本的な使い方と、実際のコード例を交えて解説します。

三項演算子とは?

三項演算子は、三項条件演算子とも呼ばれ、if 文を簡潔に表現することができる演算子です。

一般的な if 文では、以下のように書かれます。

if (条件式)
{
    処理1;
}
else
{
    処理2;
}

これを三項演算子で書くと、以下のようになります。

(条件式) ? 処理1 : 処理2;

三項演算子は、if-else 文を使って同じ機能を実現する場合よりも、より短く、簡潔に書けるという利点があります。また、コードの可読性を向上させるためにも役立ちます。

三項演算子の書き方

三項演算子は以下のような構文で書かれます。

(条件式) ? trueの時の値 : falseの時の値;
  • 条件式:真偽を判定する式
  • trueのの値:条件式がtrueの場合に返される値
  • falseのの値:条件式がfalseの場合に返される値

三項演算子の使い方

三項演算子を使用することで、短く簡潔なコードを書くことができます。以下は三項演算子を使った例です。

int a = 5;
string answerText = (a > 10) ? "aは10より大きい" : "aは10より小さい";
Console.WriteLine(answerText);
// 出力結果: "aは10より小さい"

この例では、変数aが10より大きい場合には文字列「aは10より大きい」が、そうでない場合には文字列「aは10より小さい”」が変数 answerText に代入されます。

複数の三項演算子を使う方法

参考演算子は一行のコードに複数使うことも可能です。

例えば、以下のようなコードがあるとします。

if (a > 0)
{
    if (b > 0)
    {
        result = "aとbは正の数";
    }
    else
    {
        result = "aは正の数、bは負の数";
    }
}
else
{
    result = "aは負の数";
}

このコードを三項演算子を使って書き換えると、以下のようになります。

result = a > 0 ? (b > 0 ? "aとbは正の数" : "aは正の数、bは負の数") : "aは負の数";

このように、三項演算子を複数使うことで、if 文のネストを減らすことができます。ただし、複数の三項演算子を使うと可読性が低下するため、使いすぎには注意しましょう。

必ずしも if 文を三項演算子で書き換える必要はありません。可読性が良くなる場合に限り、三項演算子を使うようにしましょう。

参考リンク