0

似乎这将是一个相当常见的模式 - 声明数组并返回它:

def self.show_day_rows(days, month, year, offset)
  daylines=[]
  1.step(days,7).each do |line_starts_with|
    daylines << CalDay.line_of_day_nums(month, year, line_starts_with, offset)
  end
  daylines
end

有没有办法缩短这个但仍然清晰?

4

2 回答 2

2
def self.show_day_rows(days, month, year, offset)
  1.step(days,7).map do |line_starts_with|
    CalDay.line_of_day_nums(month, year, line_starts_with, offset)
  end
end
于 2013-10-19T00:46:18.420 回答
0

@tihorn 的回答略有不同:

def self.show_day_rows(days, month, year, offset)
  1.step(days,7).inject([]) do |daylines, line_starts_with|
    daylines << CalDay.line_of_day_nums(month, year, line_starts_with, offset)
  end
end
于 2013-10-19T02:47:33.107 回答