Ruby <=> 这个符号是什么意思?

xiaoronglv · April 22, 2012 · Last by fsword replied at April 23, 2012 · 10219 hits

书上对<=>这个符号无详细的解释,google 上无法搜索符号。

请问这个符号是什么意思?应用到哪些地方?

一个方法而已,如果用过 Java,类似 compareTo

1.9.3p125 :001 > 1 <=> 2
 => -1 
1.9.3p125 :002 > 1 <=> 1
 => 0 
1.9.3p125 :003 > 2 <=> 1
 => 1 

一个完整的例子:

#!/usr/bin/ruby -w

h = Hash.new
h['size'] = 'big'
h['color'] = 'red'
h['brand'] = 'ford'

ak = h.sort{|a,b| a[0] <=> b[0]}
ak.each do
    |pair|
    print pair[0]
    print "=>"
    print pair[1]
    puts
end

#=>
brand=>ford
color=>red
size=>big

@xiaoronglv 这种谷歌收不到,你可以在 rdoc.info 里搜。 http://rdoc.info/search/stdlib/core/1.9.3?q=%3C%3D%3E

这个符号叫“太空船”哦~

可以 google 一下,搜索关键词:ruby, 比较运算符

You need to Sign in before reply, if you don't have an account, please Sign up first.