`

Ruby自定义类重写<=>比较运算符

    博客分类:
  • ruby
阅读更多
看一下<=>的行为,
前面大返回 1 后面大返回 -1 相等返回 0
>> 1 <=> 2
=> -1
>> 2 <=> 1
=> 1
>> 1 <=> 1
=> 0


自定义类


class Compare

  attr_accessor :date
  def initialize(date)
    @date = date
  end
  
  # 按照日期倒序排列
  def <=>(other_compare)
    other_compare.date <=> self.date
  end

end




分享到:
评论

相关推荐

    Ruby程序设计.doc

    元类是定义类本身的类,在Ruby中,每个类都有一个元类,通过元类可以修改类的行为。 **3.7 Ruby的动态性** Ruby支持动态方法定义、方法重写等特性,使得程序能够在运行时动态地改变其行为。 **3.8 变量** - **...

    疯狂JAVA讲义

    学生提问:既然内部类是外部类的成员,是否可以为外部类定义子类,在子类中再定义一个内部类来重写其父类中的内部类? 211 6.7.4 局部内部类 211 6.7.5 匿名内部类 212 6.7.6 闭包(Closure)和回调 215 6.8 ...

    javaSE代码实例

    14.6.6 自定义满足Sorted集合的类 293 14.6.7 定制SortedSet的排序规则 296 14.6.8 集合的遍历 298 14.6.9 使用for-each循环遍历集合 300 14.7 映射集 301 14.7.1 Map接口及含义 301 14.7.2 HashMap类...

    Unity编辑器:基于NGUI的引用检测工具

    通过结合使用此方法和重写Equals或使用==运算符,可以找出特定类型的所有实例及其相互关系。 7. **Unity Analyzers**:随着Unity的持续发展,现在还引入了代码分析工具,如Roslyn Analyzers,可以在编写代码时就...

Global site tag (gtag.js) - Google Analytics