我对Ruby的<=>运算符感到困惑。它与==或===有何不同?有没有全面的示例/用例?谢谢。
<=>
是一个组合比较操作符,它会返回以下结果:当左操作数等于右操作数时返回0,当左操作数大于右操作数时返回1,当左操作数小于右操作数时返回-1。
它被称为“飞船”操作符。更多信息: Ruby <=>(飞船)操作符是什么? 和 http://en.wikipedia.org/wiki/Spaceship_operator
例如,在排序中,== 将不起作用
[3,5,6,2,7].sort{|x,y| x <=>y }
== 返回布尔值
<=> 返回整数 (-1,0,1)