创build符号数组

有没有更干净的方式来做这样的事情?

%w[address city state postal country].map(&:to_sym) #=> [:address, :city, :state, :postal, :country] 

我会想, %s会做我想要的,但事实并非如此。 它只是取括号内的所有内容,并把一个大的符号排除在外。

只是一个小小的烦恼。

我在11年9月写了原始的答案,但是从Ruby 2.0开始,有一个更简单的方法来创build一个符号数组! 这个文字:

 %i(address city state postal country) 

正是你想要的。

由于风险太大,我认为构build符号数组最简洁的方法是使用一组符号。

 fields = [:address, :city, :state, :postal, :country] 

想不出比这更简洁的东西。