给定
a = nil # or [1,2]
b = [1,2] # or nil
您能否在不分配中间体或创建大量样板代码的情况下迭代连接a
和连接?b
# meaning do this much more efficiently
((a || []) + (b || [])).each do |thing|
# more lines here
puts thing
end
这有点丑:
l = lambda{|thing| do_my_thing }
a.each{|thing| l.call(thing)} if a
b.each{|thing| l.call(thing)} if b