为什么空元素等于“空灵魂”

时间:2019-06-13 13:23:31

标签: ruby iterator

我已经遵循了一段红宝石代码

[].all? { | item | item == 'empty soul' }
=> true

我希望它是false

2 个答案:

答案 0 :(得分:3)

因为这就是数学的原理。

groupby

相同
∀x ∈ X: p(x)

或者在Ruby中:

¬∃x ∈ X: ¬p(x)

与以下相同:

friends.all?(&:insane?)

或者在人类中:

  

我所有的朋友都疯了。

与以下相同:

  

我没有一个疯癫的朋友。


以上所有内容仍然相同,即使在没有朋友的情况下也是如此。

答案 1 :(得分:1)

因为您没有物品。您的所有项目都不返回假值(falsenil)。如果不是那样,您可以尝试

items.any? && items.all? { | item | item == 'empty soul' }