等于或等于语法

And*_*tad 2 ruby

在红宝石中,我可以写

a == b || a == c
Run Code Online (Sandbox Code Playgroud)

如果bc等于,它将返回true a.

但是当我想要检查许多变量时,这种语法并不是很漂亮 a

a == b || a == c || a == d || a == e || a == f
Run Code Online (Sandbox Code Playgroud)

有一个美丽的方式来做到这一点?

像这样的东西

a ==|| [b,c,d,e,f]
Run Code Online (Sandbox Code Playgroud)

OR

a ==&& [b,c,d,e,f]
Run Code Online (Sandbox Code Playgroud)

对于那AND将是伟大的.

Aru*_*hit 6

#any?用于or:

 [b,c,d,e,f].any? { |e| e == a }
Run Code Online (Sandbox Code Playgroud)

对于and,使用all?

 [b,c,d,e,f].all? { |e| e == a }
Run Code Online (Sandbox Code Playgroud)