【发布时间】:2013-01-07 08:10:00
【问题描述】:
我最近刚开始使用 Ruby,我希望有一种速记方法可以将绑定方法用作我缺少的 proc。我基本上是在尝试这样做
SYMBOLS = {"I" => 1, "V" => 5, "X" => 10, ... }
roman = "zXXIV".upcase.chars.collect { |c| SYMBOLS[c] }
=> [nil, 10, 10, 1, 5]
我觉得在 ruby 中应该有一个简单的方法来使用 SYMBOLS[] 作为绑定方法,所以只是
roman = str.upcase.chars.collect &:SYMBOLS[]
解决方案 Ruby 1.9.3
roman = SYMBOLS.values_at(*str.upcase.chars)
【问题讨论】:
标签: ruby hash map proc collect