可能重复:
Check if Ruby object is a Boolean
How can I avoid truthiness in Ruby?
给定如下的数组(例如):
[3, false, "String", 14, "20-31", true, true, "Other String"]
例如,是否有更简单的方法来确定哪些元素是实际布尔值而不诉诸于此?
value === TrueClass || value === FalseClass
依赖于数组中的位置不是一个选项,因为它会因具体情况而异。
答案 0 :(得分:0)
您可以尝试(true & value) == value
。括号中的部分似乎总是返回一个布尔值;如果该值最初不是bool,那么它将不等于结果。然而,一个布尔将会。