关于什么更适合ruby标准的快速问题。
例1:(a)好还是(b)好?
# A
annoying_at_times if user == 'Draper' || user == 'Olson' || user == 'Sterling'
# B
annoying_at_times if ['Draper', 'Olson', 'Sterling'].include? user
例2:(c)还是(d)更好?
# C
i_freaking_love if user == 'Harris' || user == 'Pryce'
# D
i_freaking_love if ['Harris', 'Pryce'].include? user
或者这么做是不是太疯狂了?
class Object
def is_in?(array)
array.include?(self)
end
end
#Usage
founding_partner if user.is_in? ['Sterling', 'Cooper', 'Draper', 'Pryce']
编辑
如果
is_in?
是User
而不是Object
的方法呢?
最佳答案
我个人喜欢“B”和“D”。至于方法,不一定。我以前也做过类似的工作,但我认为首选的方法是使用内置处理程序,然后检查对象是否在数组中(例如array.include?(self)
)。
关于ruby - Ruby社区意见:是多个还是声明还是一个包含? ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20007097/