Ca

Case in Elixir

58 esercizi

Informazioni su Case

case è una struttura di controllo del flusso che ci permette di confrontare un valore con molti pattern. Le clausole di un'espressione case vengono valutate dall'alto verso il basso, finché non si trova una corrispondenza.

In molti casi, case e la definizione di più clausole di funzione sono intercambiabili. Nelle clausole di case si possono usare il pattern matching e le guardie.

# one function clause, multiple case clauses
def age_group(age) do
  case age do
    0 -> ~c"infant"
    age when age < 4 -> ~c"baby"
    age when age < 13 -> ~c"child"
    age when age < 18 -> ~c"teenager"
    _ -> ~c"adult"
  end
end

# multiple function clauses, no case
def age_group(0), do: ~c"infant"
def age_group(age) when age < 4, do: ~c"baby"
def age_group(age) when age < 13, do: ~c"child"
def age_group(age) when age < 18, do: ~c"teenager"
def age_group(_), do: ~c"adult"

Non ci sono regole rigide per scegliere l'una o l'altra. È una questione di preferenza personale, che di solito dipende dal contesto.

Modifica tramite GitHub Il collegamento si apre in una nuova finestra o scheda

Impara Case

La pratica è bloccata

Sblocca 2 altri esercizi per esercitarti su Case