Ruby のメソッド名で質問です。
①なぜ to_s メソッド名が勝手に実行されるのでしょうか?
employees[0].to_s と記述するものだと思っていたのですが...。
②メソッド名をメソッド名に指定してよいのでしょうか?
class Employee
attr_reader :id
attr_accessor :name
def initialize id, name
@id = id
@name = name
end
def to_s
return "#{@id}:#{@name}"
end
def <=> other
self.id <=> other.id
end
end
employees = []
employees << Employee.new("3","Tanaka")
employees << Employee.new("1","Suzuki")
employees << Employee.new("2","Sato")
employees.each do |e| puts e end
【出力結果】
3:Tanaka
1:Suzuki
2:Sato
教えていただけると非常に助かります。
よろしくお願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。