Как отсортировать массив диапазоновсортировать массив диапазонов
ranges = [Range.new(0, 3, true), Range.new(3, 5, true), Range.new(5, 7, true), Range.new(7, 9, true), Range.new(9, 11, true), Range.new(11, 100, true)]
ranges.sort
=> ArgumentError: comparison of Range with Range failed
from (irb):7:in `sort'
from (irb):7
from /Users/praveena/.rvm/rubies/ruby-2.0.0-p247/bin/irb:16:in `<main>'
Но когда я пытаюсь
2.0.0p247 :022 > (3...4) <=> (4...8)
=> nil
2.0.0p247 :023 > (3...4) <=> (1...2)
=> nil
Я-то отсутствует?
Я подозреваю, что равенство - это четко определенная математическая концепция для «диапазона», но нет такой четко определенной концепции «больше чем «или« меньше »- по крайней мере, недостаточно, чтобы превратить его в ядро языка, вы всегда можете придумать что-то, что сработает для вас. –
@NeilSlater согласен, нет четко определенного и здравого смысла, чтобы сказать из двух разных диапазонов, один из которых больше. – fotanus