属性として身長と体重を追加しよう。
体重は秘密にしよう。
require_relative 'person'
class Person
...
BMI を計算するメソッドを追加しよう。
BMI = 体重[kg] / (身長[m] ** 2)
Person#<=> を書き直そう。
その妥当な仕様は?
p0 = Person.new('matz')
p1 = Person.new('Matz', Time.local(1965, 4, 14))
p0 <=> p1 # => ?
@name
と@born
を比較対象の属性とする。@name
は、大文字/小文字を区別しない。- 比較対象が
Person
でなければnil
を返す。
Person#=== を定義しよう。
その妥当な仕様は?
p0 = Person.new('matz')
p1 = Person.new('Matz', Time.local(1965, 4, 14))
p0 === p1 # => ?
===
は==
に比べて ゆるい 比較を行う。@name
のみを対象の属性とする。@name
は、大文字/小文字を区別しない。- 比較対象が
Person
でなければ、そのオブジェクトの文字列形式と比較する。