数学における三項演算子(さんこうえんざんし、: ternary operator)とは、3つの被演算子を持つ演算子のことである。

集合 A 上の三項演算は A の任意の3つから A の元を1つ生成する。このような三項演算の例としてジョルダン三項積など三項系における三項積や、ヒープ英語版の積がある。

プログラミング言語 編集

プログラミング言語における三項演算子の例として、条件演算子が挙げられる。

条件演算子は、典型的には expr1 ? expr2 : expr3 という形式で記述され、ブール値に変換できる式 expr1 を評価し、結果が真なら expr2, 偽なら expr3 を評価し、その結果を値とする演算子である。

C言語など一部のプログラミング言語では条件演算子が唯一の組み込みの三項演算子であるため、非公式な文書において、条件演算子を三項演算子と呼称されることがある。

他の三項演算の例として、Pythonなどにおける配列のスライス演算がある(ただしスライス演算自体は必ずしも3項を必要としない)。

三項演算としてのスライス演算は典型的には expr1 [ expr2 : expr3 ] の形式で記述され、配列(あるいは順序を持ち添字によるデータアクセスが可能なデータ構造)に変換できる式 expr1 と整数に変換できる式 expr2, expr3 をそれぞれ評価し、expr1 の与える配列から expr2, expr3 が与える範囲の部分配列を値とする演算である。

関連項目 編集