我知道我可以用 Ruby 做到这一点:
['a', 'b'].map do |s| s.to_sym end
得到这个:
[:a, :b]
我正在寻找一种不使用 block 的更简洁的方法。不幸的是,这不起作用:
['a', 'b'].map #to_sym
我可以比使用初始代码做得更好吗?
最佳答案
阅读一些关于 Symbol#to_proc 的内容:
['a', 'b'].map(&:to_sym)
# or
['a', 'b'].map &:to_sym
# Either will result in [:a, :b]
如果您使用的是 Ruby 1.8.7 或更高版本,或者如果您使用的是 Rails,则此方法有效 - ActiveSupport 将为您添加此功能。
关于ruby - 如何在不使用 block 的情况下在 Ruby 中计算 'map'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7310389/