什么是Ruby<=>(宇宙飞船)操作符?

什么是Ruby<=>(宇宙飞船)操作符?

什么是红宝石<=>(宇宙飞船)操作员?操作符是否由其他语言实现?



呼唤远方
浏览 626回答 3
3回答

一只萌萌小番薯

Perl很可能是使用它的第一种语言。Groovy是另一种支持它的语言。基本上没有回来1&nbsp;(true)或0(false)取决于参数是相等的还是不相等的,太空船运算符将返回1,&nbsp;0,或−1取决于左参数相对于右参数的值。a&nbsp;<=>&nbsp;b&nbsp;:= &nbsp;&nbsp;if&nbsp;a&nbsp;<&nbsp;b&nbsp;then&nbsp;return&nbsp;-1 &nbsp;&nbsp;if&nbsp;a&nbsp;=&nbsp;b&nbsp;then&nbsp;return&nbsp;&nbsp;0 &nbsp;&nbsp;if&nbsp;a&nbsp;>&nbsp;b&nbsp;then&nbsp;return&nbsp;&nbsp;1 &nbsp;&nbsp;if&nbsp;a&nbsp;and&nbsp;b&nbsp;are&nbsp;not&nbsp;comparable&nbsp;then&nbsp;return&nbsp;nil它对于排序数组很有用。

森林海

我将用简单的例子来解释。[1,3,2] <=> [2,2,2]Ruby将从左侧开始比较两个数组的每个元素。1因为左数组小于2正确的排列。因此左数组比右数组小。输出-1.[2,3,2] <=> [2,2,2]如前所述,它将首先比较等于的第一个元素,然后比较第二个元素,在这种情况下,左数组的第二个元素更大,因此输出是1.
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Ruby