基本上,我正在尝试检查我的 6 个值是否相同。我试着把它们串起来:
if val1 == val2 == val3 == val4 == val5 == val6
#...
end
但这会出错。这可以使用另一种方法吗?谢谢
基本上,我正在尝试检查我的 6 个值是否相同。我试着把它们串起来:
if val1 == val2 == val3 == val4 == val5 == val6
#...
end
但这会出错。这可以使用另一种方法吗?谢谢
尝试这个:
if [val1, val2, val3, val4, val5, val6].uniq.count == 1
#...
end
如果你想变漂亮,你可以试试这个
unless [val2, val3, val4, val5, val6].find{ |x| x != val1 }
# ...
end
一旦找到不等于 的元素,上述将立即停止val1
,否则将执行该块。
一个可爱的方式:
[val1,val2,val3,valN].uniq.size == 1
一种更平淡的方式:
[val2,val3,valN].all?{ |x| x == val1 }
如果值是Fixnum,这条性感的线会起作用:
if val1 == val2 & val3 & val4 & val5 & val6
# ...
end
如果不是,那么这种脂肪适用于任何类型
if [val1] == [val2] & [val3] & [val4] & [val5] & [val6]
# ...
end