ruby对象的比较有三种方式
1、比较两个对象的值是否相等,返回 true, flase
== (等于) != (不等于)
a=1;
b=1.0;
a==b #true
2、比较两个对象的值、类型是否相等,返回 true, flase
eql?
a=1;
b=1.0;
a.eql?(b) #flase(a为整数型,b为浮点型)
3、比较两个对象在内存中地址是否相同,返回 true, flase
equal?
a=1.0; b=1.0; a.equal?(b) #flase
a=1.0; b=a ; a.equal?(b) # true
4、比较两个对象的大小,大于、等于、小于 分别返回1,0,-1
<=>
"aab" <=> "acb" # -1 (第二个 a 的 ASCII 码小于 c)
[5] <=> [4,9] # 1 (第一个元素 5 > 4)
5、右边的对象是否在左边区间之内,返回 true, flase
===
puts (0..9)=== 3.14 #true
puts ('a'..'f')=== 'c' # true