请问ruby中 <=>是什么意思?

Python017

请问ruby中 <=>是什么意思?,第1张

这是ruby里“宇宙飞船运算符”。

运算符的左边和右边相比较,左边小于右边返回负数,相等返回0,大时返回正数。

宇宙飞船运算符主要用于排序。对元素的大小进行判定。

ruby判断字符串用"=="就可以。判断对象可以用"equal?"方法。此处与java相反。

p str1==str2返回的结果应该是先打印"str1==str2"的结果后,然后再输出一个空行。这点可以查看相关api。所以msgbox显示的是nil(即返回的空行)。

测试实例:

irb(main):002:0>s=p "1"=="1"

true

=>nil

irb(main):003:0>s

=>nil