How to make a switch in Ruby?

1

How can I make a switch in Ruby?

    
asked by anonymous 05.11.2014 / 15:46

1 answer

8

In this case Ruby uses the structure case...when

case objeto
when 1
  puts "Seu número é 1"
when 2..10
  puts "Seu número está entre 2 e 10"
when 11,13,17,19
  puts "é um número primo entre 10 e 20"
when String
  puts "é uma String"
else
  puts "Qualquer outra coisa."
end

You can create this structure without parameter as well

case
when objeto < 10
  puts "Menor que 10"
when objeto == 10
  puts "Igual a 10"
when (10..20) === b
  puts "Alguma coisa entre 10 e 20"
end

And also Ruby interprets all kinds of statements as case when/ if else anyway ... That is:

    objeto = 1
    variable_to_return = case objeto
                           when 1
                             10
                           else 
                             'UAHEUHAUEHUAEHUAE sou uma String!'
                         end
   puts variable_to_return  # => 10
    
05.11.2014 / 15:48