class A
def initialize(string, number)
@string = string
@number = number
end
def to_s
"In to_s:\n #{@string}, #{@number}\n"
end
def to_a
"In to_a:\n #{@string}, #{@number}\n"
end
end
puts a = A.new("hello world", 5)
输出是
In to_s:
hello world, 5
该方法是如何to_s
自动调用的?
为什么不自动调用另一种方法,例如to_a
?
既然我没有在to_s
方法中写puts,为什么要打印输出。