宇宙船演算子 (英: spaceship operator)、あるいは三方比較演算子 (英: three-way comparison operator) とは、比較演算子の一種である。<=>演算子として実装されることが多い。

プログラミング言語における具体例

A <=> Bにおいて、Perl(数値のみ)、PHP(バージョン7以上)、Ruby、Apache Groovyは、A < Bなら-1A == Bなら0A > Bなら1をそれぞれ返す実装契約を規定している。C でも<=>演算子が同じ働きをする。

Python 2.x ではcmp関数、OCamlではcompare関数、KotlinおよびJavaではcompareToメソッド、.NET FrameworkではCompareToメソッドが同じ働きをする。

Haskellでは、Ord型クラスに定義されているcompare関数を実装し、LTEQGTのいずれかを返さなければならない。

C言語では、memcmpstrcmpがメモリと文字列に対してそれぞれ比較を行う。

名称の由来

「宇宙船」と言われる由来は諸説ある:

  • SF映画『スターウォーズ』に出てくる人物ダース・ベイダーの乗る宇宙船タイ・ファイター

関連項目

  • strcmp - C言語で文字列を辞書的に比較する関数

脚注

注釈

出典


向宇宙进发:《虚空航船》将于9月7日以抢先体验形式发售 机核 GCORES

中国の有人宇宙船「神舟17号」、数々の宇宙科学実験で進展を見せる 写真1枚 国際ニュース:AFPBB News

宇宙船模型 手辦_玩具及模型_批發.二手

宇宙船?|投稿テーマ【人工物の写真】 散歩写真

宇宙船 Stock Illustration Adobe Stock