2

Peter Cooper 的关于多态性的开始 Ruby 中的一个示例涉及该to_s方法。他举了这个例子:

puts 1000.to_s
puts [1, 2, 3].to_s
puts ({ :name => 'Fred', :age => 10 }).to_s

并将其显示为输出:

1000
123
age10nameFred

但我得到的输出是:

1000
[1, 2, 3]
{:name=>"Fred", :age=>10}

有谁知道为什么会这样?红宝石有变化,还是我做错了什么?或者没有足够的信息可以告诉?我怎样才能找到它?

4

1 回答 1

3

这些示例使用 ruby​​ 1.8.7 工作,它有点过时了。Ruby 1.9.3(当前版本)更改了to_s数组和哈希的实现。

编辑:见Ruby 1.9 Array.to_s 表现不同?

于 2012-11-19T21:46:50.173 回答