サーチ…


構文

  • include Comparable
  • 宇宙船オペレータを実装する( <=>

パラメーター

パラメータ詳細
その他 selfと比較されるインスタンス

備考

x <=> yx < y場合は負の数、 x == y場合はゼロ、 x > y場合は正の数を返します。

エリアに匹敵する長方形

Comparableは、Rubyでもっとも人気のあるモジュールの1つです。その目的は、便利な比較方法を提供することです。

それを使用するにinclude Comparableinclude Comparable 、宇宙船オペレータ( <=> )を定義する必要があります。

class Rectangle
  include Comparable

  def initialize(a, b)
    @a = a
    @b = b
  end

  def area
    @a * @b
  end

  def <=>(other)
    area <=> other.area
  end
end

r1 = Rectangle.new(1, 1)
r2 = Rectangle.new(2, 2)
r3 = Rectangle.new(3, 3)

r2 >= r1 # => true
r2.between? r1, r3 # => true
r3.between? r1, r2 # => false


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow