Ca

Case en Elixir

58 ejercicios

Acerca de Case

case es una estructura de control de flujo que nos permite comparar un valor dado con muchos patrones. Las cláusulas de una expresión case se evalúan de arriba abajo hasta que se encuentra una coincidencia.

En muchos casos, usar case es intercambiable con definir varias cláusulas de función. En las cláusulas de case se pueden usar la coincidencia de patrones y las guardas.

# 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"

No hay reglas estrictas para elegir una opción u otra. Es una cuestión de preferencia personal que suele depender del contexto.

Editar en GitHub El enlace se abre en una nueva ventana o pestaña

Aprende Case

La práctica está bloqueada

Desbloquea 2 ejercicios más para practicar Case