Saya baru saja mulai mempelajari Ruby dan Ruby on Rails dan menemukan kode validasi yang menggunakan rentang:
validates_inclusion_of :age, :in => 21..99
validates_exclusion_of :age, :in => 0...21, :message => "Sorry, you must be over 21"
Awalnya saya pikir perbedaannya ada pada penyertaan titik akhir, tetapi dalam dokumen API yang saya lihat, tampaknya tidak masalah apakah itu ..
atau ...
: itu selalu menyertakan titik akhir.
Namun, saya melakukan beberapa pengujian di irb dan tampaknya menunjukkan bahwa itu ..
mencakup kedua titik akhir, sementara ...
hanya menyertakan batas bawah tetapi tidak di atas. Apakah ini benar?
(1..10).include? 10 #=> true
dan(1...10).include? 10 #=> false