如果我有三个或更多这样的物体:
a = 4
b = 4
c = 4
d = 2
用什么干净的ruby风格来判断它们是否相等?是否有针对三个或更多元素运行相等性测试的定制方法?
我想我可以这样做:
arrays = [a,b,c,d].map{|x| [x]}
arrays.first == arrays.reduce(:&) ? true : false
这似乎起作用,但感觉有点笨拙,而且其他开发者很难阅读。
最佳答案
[a,b,c,d].any?{|x| x != a}
或
array.any?{|x| x != array.first}
或者,全部?方法可能更直观地读取一些:
array.all? {|x| x == array.first }
关于ruby - 对三个或更多对象进行相等性测试,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35295181/