有什么比这更好的方法:
X = %w(a b c)
Y = %w()
X.each do |x|
Y << "good_" + x
end
感谢。
答案 0 :(得分:6)
%w(a b c).map{|x| "good_#{x}"}
答案 1 :(得分:3)
数组上的collect方法会做
Y = X.collect{|e|'good_'+e}
OR
直接
Y = %w(a b c).collect{|e|'good_'+e}
答案 2 :(得分:1)
将它们定义在同一行:
y = ( x = %w[a b c] ).map { |i| 'good_%s' % i }
y
=> ["good_a", "good_b", "good_c"]
x
=> ["a", "b", "c"]