Misplaced Pages

Spaceship operator

Article snapshot taken from[REDACTED] with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.

This is an old revision of this page, as edited by Cww (talk | contribs) at 00:24, 13 November 2007 (Clarification and link). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Revision as of 00:24, 13 November 2007 by Cww (talk | contribs) (Clarification and link)(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

The spaceship operator is a binary relational operator that originated in the Perl programming language. Other languages, such as Ruby and Groovy also support the spaceship operator. It is written <=> . Unlike traditional equality operators, which will return 1 or 0 depending on whether the arguments are equal or unequal, the spaceship operator will return 1, 0, or -1 depending on the value of the left argument relative to the right argument. If the left argument is greater than the right argument, the operator returns 1. If the left argument is less than the right argument, the operator returns -1. If the two arguments are equal, the operator returns 0.

The spaceship operator is primarily used for comparisons in sorting. It is usable for a stable sort as it will return 0 for equal arguments.

The spaceship operator takes its name because it looks like a small flying saucer as ASCII art. The term is now commonly used and the operator is referred by the name within the Perl documentation.

Example

$a = 5 <=> 7;  # $a is set to -1
$a = 7 <=> 5;  # $a is set to 1
$a = 6 <=> 6;  # $a is set to 0

External Links

Reference to the properties of the operator within perldoc

Reference to the actual term within perldoc

Category:
Spaceship operator Add topic