Разница между «..» (двойная точка) и «…» (тройная точка) в генерации диапазона?

Я только начал изучать Ruby и Ruby on Rails и наткнулся на код проверки, который использует диапазоны:

validates_inclusion_of :age, :in => 21..99
validates_exclusion_of :age, :in => 0...21, :message => "Sorry, you must be over 21"

Сначала я подумал, что разница был во включении конечных точек, но в документах API, которые я просматривал, казалось, не имело значения, было ли это ... или ... : оно всегда включало конечные точки .

Тем не менее, я провел некоторое тестирование в irb и, похоже, показал, что ... включает обе конечные точки, а ... включает только нижнюю границу, но не верхнюю. Это правильно?

98
задан Andrew Marshall 12 December 2014 в 18:40
поделиться