2016-01-19 2 views
3

Есть сокращенная в Ruby, чтобы оценить выражение, какСтенография для значению1 <значение2 <value3

value1 = 1 
value2 = 2 
value3 = 3 
value1 < value2 < value3 
# => NoMethodError: undefined method `<' for true:TrueClass 
# should be true 

value2 = 1 
value1 < value2 < value3 
# => NoMethodError: undefined method `<' for false:FalseClass 
# should be false 

Или мне приходится иметь дело с диапазонами как

value1 < value3 && (value1..value3).include?(value2) 

Этот путь может получить довольно неудобный когда у вас много ценностей.

+1

Не знаком с Ruby, но разве у него нет функции, которая проверяет, отсортирован ли массив? –

+4

Нет эксперта по Ruby, но не будет просто 'value1

+0

Да, это сработает, я просто ищу синтаксический сахар;) – 23tux

ответ

1
value2.between?(value1, value3) 
+2

Это эквивалентно 'value1 <= value2 <= value3' – Stefan

Смежные вопросы