Я щойно почав вивчати Ruby і Ruby на Rails і натрапив на код перевірки, який використовує діапазони:
validates_inclusion_of :age, :in => 21..99
validates_exclusion_of :age, :in => 0...21, :message => "Sorry, you must be over 21"
Спочатку я думав, що різниця полягає у включенні кінцевих точок, але в документах API, які я розглядав, здавалося, не важливо, чи це .. чи ...: завжди включені кінцеві точки.
Однак я провів тестування в irb, і, здавалося, це вказує на те, що ..включає обидві кінцеві точки, в той час ...як включає лише нижню межу, але не верхню. Це правильно?
(1..10).include? 10 #=> trueта(1...10).include? 10 #=> false