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 文を三項演算子で書き換える必要はありません。可読性が良くなる場合に限り、三項演算子を使うようにしましょう。