Как многолик он, этот case
Все уже давно привыкли, что в ruby можно делать такие вещи:
a, b = 10, 20
При этом переменной a присваивается значение 10, а b, соответственно, 20. Но когда мы хотим использовать оператор case в таком же ключе, он посылает нас подальше. Конструкция вида
a, b = case variable
when 10: 10, 20
when 20: 20, 10
end
работать не будет.
В группе ror2ru мне подсказали, как решить эту задачу:
a, b = case variable
when 10: [10, 20]
when 20: [20, 10]
end
То есть все наши значения нужно перечислять в массиве.
2 years ago • Notes