Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial
  • Lezione 18 di 45
  • livello principiante
Indice lezioni

Case

Eseguire le istruzioni condizionali in modo più chiaro ed elegante con case
Eseguire le istruzioni condizionali in modo più chiaro ed elegante con case
Link copiato negli appunti

In molti casi casi in alternativa a if, e unless, è più comodo e più chiaro utilizzare il costrutto case. vediamolo in dettaglio. La sintassi classica è la seguente:

case command
when "start"
    puts "avvio in corso..."
when "stop"
    puts "arresto in corso..."
else
    puts "Comandi: start/stop"
end

L'istruzione che segue l'else rappresenta il ramo di default che viene eseguito se tutte le altre condizioni falliscono. Se la condizione è sulla stessa linea dell'espressione è possibile utilizzare la parola chiave then o i due punti ottenendo una sintassi più compatta:

case n 
    when n > 10: puts "N è maggiore di dieci"
    when n < 10: puts "N è minore di dieci"
    else puts "N vale dieci"
end

A differenza dell'esempio precedente in questo caso abbiamo utilizzato come condizioni delle espressioni booleane, in alternativa è possibile utilizzare anche delle espressioni regolari, dei range o delle classi rendendo il case uno strumento incredibilmente potente. Inoltre poiché case ritorna il valore dell'ultima espressione valutata è possibile assegnare ad una variabile il risultato del costrutto:

value_n = case n 
          when n > 10: "N è maggiore di dieci"
          when n < 10: "N è minore di dieci"
          else         "N vale dieci"
          end

Ti consigliamo anche