标签: ruby
我在玩范围时偶然发现了奇怪的行为,预计:
(1...1).count # => 0 (1...1).first(1) # => [] (1...1).last(1) # => [] (1...1).to_a # => []
但
(1...1).first # => 1 (1...1).last # => 1
我是否会遗漏某些内容或是否是这种行为?
答案 0 :(得分:5)
原因是Range#first is defined to return Range#begin if no argument is passed。
Range#first
Range#begin
同样 - Range#last => Range#end。
Range#last
Range#end