假设我有一个看起来像的数组:
[true, true, false]
我正在传递一个运算符以及可能是AND
,OR
或XOR
的数组。
所以我想根据指定的运算符计算数组的逻辑值。
例如:
对于给定的数组[true, true, false]
和运算符AND
我应该可以继续执行数组中的n个元素
Steps: true AND true -> true, true AND false -> false
因此输出应为false
数组可以是n个布尔值。
答案 0 :(得分:1)
最好和最简单的方法是使用startDate
:
reduce
另一种方式可能是使用def logical_calculation(arr, op)
op=='AND' ? arr.reduce(:&) : op=='OR' ? arr.reduce(:|) : arr.reduce(:^)
end
inject