我如何在课堂上运用推杆?

问题描述

|
class X
  def initialize
    @name = \"Bob\"
  end
  blah blah
end

puts X.new  # I want this to print X:Bob
puts [X.new,X.new] # I want this to print [X:Bob,X:Bob]
    

解决方法

覆盖类的
to_s
方法:
class X
  def initialize
    @name = \"Bob\"
  end

  def to_s
    \"X:#{@name}\"
  end
end

puts X.new  # prints X:Bob
puts [X.new,X.new].to_s # prints [X:Bob,X:Bob]
    ,您需要有
initialize
,而不是
init
。