Проверьте, находится ли целое число в пределах диапазона
Существует ли простой способ оценить, находится ли целое число в этом диапазоне, используя синтаксис (2..100)
.
Например, скажем, что я хотел оценить как истинное, если мое целое число x = 100
и мой диапазон (0..200)
, я просто ищу простой, краткий рубиновый способ сделать это.
Ответы
Ответ 1
Есть много способов сделать то же самое в Ruby. Вы можете проверить, находится ли значение в диапазоне, используя следующие методы:
14.between?(10,20) # true
(10..20).member?(14) # true
(10..20).include?(14) # true
Но я бы предложил использовать between?
, а не member?
или include?
Все числовые литералы обозначают включающие диапазоны.
Вы можете найти больше об этом в Ruby in Rails.
Ответ 2
Вы можете использовать оператор ===:
(1..10) === 1 #=> true
(1..10) === 100 #=> false
Ответ 3
вы можете использовать метод member?
диапазона для проверки этого
(1..10).member?(1) => true
(1..10).member?(100) => false
Ответ 4
(2..100).include?(5) #=> true
(2..100).include?(200) #=> false
Обратите внимание, что 2..0
- пустой диапазон, поэтому (2..0).include?(x)
вернет false
для всех значений x
.
Ответ 5
рассмотрите этот вопрос: Определение, находится ли переменная в пределах диапазона?