Как использовать условную конструкцию switch case в ruby
Ответы
Nikolai Gagarinov
10 января 2022
В Ruby switch case может использоваться следующим образом
condition = 1
case condition
when 1
# first case
pp 'first'
when 2
# second case
pp 'second'
else
# default case
pp 'default'
end
Т.е. в отличии от большинства языков, здесь используется не switch/case/default, а case/when/else.
В case
передаётся условие и оно разруливается по веткам внутри when
. Если ни одно из значений не подошло, то выполнится else, если он есть.
Также в case/when можно не писать return, если конструкция должна что-то вернуть из функции
def describe_number(number)
case number
when 1
'one'
when 2
'two'
when 3
'three'
else
'unknown'
end
end
pp describe_number(2) #=> "two"
pp describe_number(5) #=> "unknown"
0
0