Vai al contenuto principale

IF ELSE in Scala

In questo tutorial imparerai le istruzioni condizionali IF ELSE nel linguaggio di programmazione Scala.
· 5 min leggi

Scopri con l'IA

if else
Fonte: Scala - ISTRUZIONI IF ELSE

Come molte altre applicazioni e linguaggi di programmazione, anche Scala ha istruzioni condizionali if-else per prendere decisioni. Il blocco condizionale if viene eseguito se la condizione risulta True; in caso contrario, viene eseguito il blocco condizionale else (solo se è presente l'istruzione else).

In genere l'istruzione else non ha condizioni: viene eseguita solo quando la condizione dell'if è False. In breve, le istruzioni if-else sono costituite da espressioni booleane che funzionano su base True-False.

Esistono vari tipi di istruzioni if-else:

- Istruzione If,

- Istruzione If-Else,

- Istruzione If-else annidata,

- Istruzione If-Else-If-Else.

Prima di iniziare a imparare le diverse istruzioni if-else, configuriamo rapidamente l'ambiente Scala per utenti Mac seguendo i passaggi qui sotto.

Nota: Assicurati di avere Java installato; in caso contrario, segui le istruzioni fornite qui.

- \$ brew update

- \$ brew install scala

- \$ brew install sbt

- \$ echo '-J-XX:+CMSClassUnloadingEnabled' >>
/usr/local/etc/sbtopts

- \$ echo '-J-Xmx2G' >> /usr/local/etc/sbtopts

Una volta completati i passaggi sopra, testa rapidamente l'installazione digitando scala nel terminale: dovresti vedere un output come quello mostrato sotto.

output

Nota: In questo tutorial scriverai il codice nell'editor vim ed eseguirai tutto dal terminale.

Istruzione if in Scala

L'istruzione if comprende un'espressione di natura boolean (true o false). Se l'espressione è vera, viene eseguito il blocco di codice all'interno dell'istruzione if; se l'espressione è falsa, viene eseguita la prima riga di codice successiva alla fine dell'istruzione if.

if(boolean expression)
{
esegui se l'espressione booleana è vera
}

Per prima cosa definirai un object o una class chiamata scala_if; all'interno dell'oggetto imposterai la funzione main e scriverai il corpo principale del codice. Creerai una variabile intera x con valore 20. Infine, il cuore del codice è il blocco if con la condizione x<=20 e, dato che x vale 20, il blocco dentro l'istruzione if verrà eseguito.

Salviamo il codice qui sotto con il nome if.scala.

code

Per eseguire il codice sopra, ti basta digitare scala if.scala e dovresti vedere un output come quello mostrato sotto.

output

Istruzione if-else in Scala

Simile all'istruzione if, l'istruzione if-else comprende un'espressione di natura boolean (true o false). Se l'istruzione if è vera, viene eseguito il blocco di codice al suo interno; se è falsa, viene eseguito il blocco di codice all'interno dell'istruzione else.

if(boolean expression)
{
esegui se l'espressione booleana è vera
}
else
{
esegui questo blocco se l'espressione booleana (dell'if) è falsa
}

Il seguente codice eseguirà l'istruzione else poiché la variabile x ha un valore maggiore di 20; verrà quindi eseguito il blocco di codice dentro l'istruzione else.

Salviamo il codice qui sotto con il nome if-else.scala.

code

Per eseguire il codice sopra, ti basta digitare scala if-else.scala e dovresti vedere un output come quello mostrato sotto.

output

Istruzione if-else annidata in Scala

Proprio come di solito hai un'istruzione if seguita da un'istruzione else, l'istruzione if-else annidata è simile nello spirito. Nell'if-else annidato puoi usare un'istruzione if o else-if all'interno di un'altra istruzione if o else-if.

Nella prossima sezione vedrai le istruzioni else-if.

if(boolean expression 1)
{
  esegui il blocco 1 se l'espressione booleana 1 è vera**
  if(boolean expression 2)
  {
   esegui il blocco 2 se le espressioni booleane 1 e 2 sono vere
  }
}

Il seguente codice usa istruzioni nested-if per confrontare quattro variabili intere, ossia $v$, $x$, $y$ e $z$ e, infine, se tutte le condizioni sono soddisfatte, stampa l'output sul terminale.

Salviamo il codice qui sotto con il nome nested-if-else.scala.

code
output

Istruzione else-if in Scala

L'istruzione else-if è più potente rispetto alle istruzioni if-else. A differenza delle if-else, in cui un else è seguito da un'istruzione if, else-if è di per sé un'unica istruzione. Ti dà la libertà di verificare varie condizioni.

Tuttavia, ci sono alcune regole da tenere a mente quando si usano le istruzioni else-if:

  • Un else-if deve comparire solo dopo un'istruzione if; un'istruzione if può avere zero o più else-if.

  • Allo stesso modo, un else deve comparire solo dopo istruzioni if ed else-if; un'istruzione if può avere zero o un'istruzione else.

  • Quando un else-if ha successo, nessuno dei restanti else-if o else verrà considerato e saranno saltati direttamente.

if(boolean expression 1)
{
  esegui il blocco 1 se l'espressione booleana 1 è vera
}
else-if(boolean expression 2)
{
  esegui il blocco 2 se l'espressione booleana 2 è vera
}
else
{
  esegui questo blocco se tutte le istruzioni sopra sono false
}

Conclusione

Congratulazioni per aver completato il tutorial.

Questo tutorial è stato un buon punto di partenza per chi vuole imparare le istruzioni condizionali IF ELSE in Scala.

Un piccolo esercizio per te: scrivi un breve pezzo di codice per l'istruzione else-if in Scala e prova a capire come queste istruzioni differiscono dalle altre.

Riferimenti:

Se hai domande su questo tutorial, sentiti libero di lasciarle nei commenti qui sotto.

Argomenti

Correlato