Sök…


Syntax

  • include Comparable
  • implementera rymdskeppsoperatören ( <=> )

parametrar

Parameter detaljer
Övrig Instansen som ska jämföras med self

Anmärkningar

x <=> y ska returnera ett negativt tal om x < y , noll om x == y och ett positivt tal om x > y .

Rektangel jämförbar per område

Comparable är en av de mest populära modulerna i Ruby. Syftet är att tillhandahålla metoder för jämförelse av bekvämligheter.

För att använda den måste du include Comparable och definiera rymdskeppsoperatören ( <=> ):

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
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow