我正在编写一些代码,它最终变得太丑了,我不喜欢。无论如何,我可以重构它,以便我不使用嵌套if语句?Ruby:嵌套if语句
def hours_occupied(date)
#assuming date is a valid date object
availability = get_work_hours(date)
focus = "work"
if availability.nil
availability = get_family_hours(date)
focus = "family"
if availability.nil
availability = get_friend_hours(date)
focus = "friends"
end
end
end
我知道我能够为可用性
availability = get_work_hours(date) || get_family_hours(date) || get_friend_hours(date)
做这样的事情,但我怎么设置相应的重点变量?
我们可以假设您没有显示完整的方法吗?否则分配那些未使用的变量是没有意义的。如果是这种情况,请在方法底部添加“...”作为占位符。 – tokland
@tokland:我发现自己完全无法理解他的代码的主题和目的,这使我无法回应。 –