我在Ruby中很新,所以想知道和学习如何干。我有2如果语句非常相似,是否有重构它?重构2类似如果语句在红宝石
msg1,msg2 = msg.split('.')
if !msg1.nil?
items = msg1.split(',')
items.each do |item|
item.strip!
end
somefunction(items)
end
if !msg2.nil?
items = msg2.split(',')
items.each do |item|
item.strip!
end
somefunction(items)
end
看起来很酷。让我试试看。谢谢! – revolver 2012-02-02 08:19:00
你能解释一下地图(&:strip)吗? – revolver 2012-02-02 08:29:45
它基本上是'map {| x | x.strip}'。 'map'类似于'each',但收集数组中的所有结果(因此它也被称为“collect”)。为了理解'&:'在'Symbol#to_proc'方法上的阅读。 – 2012-02-02 08:40:48