1

我定义了一些范围变量

team_numbers = 1..11
defence_numbers = 2..5
center_numbers = 6..8
attack_numbers = 9..11

为什么这段代码返回 false ?

puts (team_numbers === attack_numbers)

team_numbers 范围不包括 attack_numbers 吗?

4

1 回答 1

1

看这里Range#===

rng === obj → 真或假

如果 obj 是范围的元素,则返回 true,否则返回 false。

这就是为什么预期会出现以下结果:

(1..4) === 3 # => true
(1..4) === (1..3) # => false
(1..4) === (1..4) # => false

说你false从表达式中得到了预期的结果puts (team_numbers === attack_numbers)

于 2013-06-20T19:12:35.897 回答