初始化循环中用于跟踪先前值的临时变量的最佳方法是什么?
这是我如何做的例子,但我觉得有一种更清洁的方式.如果之前的节目是在另一天,我只想打印节目日期
temp_show_date = ""
shows.each do |show|
if temp_show_date != show.date
puts show.date
end
puts show.name
temp_show_date = show.date
end
Run Code Online (Sandbox Code Playgroud)
我可能会重新使用数据,group_by因此它或多或少匹配所需的输出.然后,您可以输出一次日期,因为它成为哈希中的键,然后是该日期的节目数组:
shows.group_by(&:date).each do |date, date_shows|
puts date
puts date_shows
end
Run Code Online (Sandbox Code Playgroud)
(我正在使用IRB的默认行为来提供数组作为参数puts,其中每个元素都打印在一个新行上.如果你需要对它们做其他事情,你可以循环遍历该数组).
| 归档时间: |
|
| 查看次数: |
231 次 |
| 最近记录: |