我常用[1, 2, 3].include? foo
成语。这本身并没有什么问题,但是为了可读性,能够编写foo.is_in? [1, 2, 3]
. 核心或标准库是否有方法可以做到这一点?
问问题
41 次
2 回答
1
不,标准中没有这种方法。自己实现它:
class Object
def is_in? a
return a.include?(self)
end
end
请注意,在上面的代码中,我从不检查 a 的类型,因此如果include?
未为 a 定义,则会出现错误。
于 2013-03-06T16:07:10.893 回答
0
与您想要的方式不完全相同,但您可以重写它
if [1, 2, 3].include? foo
do_this
else
do_that
end
对此:
case foo; when 1, 2, 3
do_this
else
do_that
end
于 2013-03-06T16:32:23.543 回答