C# 8 nos trae muy buenas mejoras en el lenguaje. pero definitivamente una que realmente me gusta mucho es Switch expression.
int intValueForSwitch = 0;
string state = "";
switch (intValueForSwitch)
{
case 0:
state = "Zero";
break;
case 1:
state = "One";
break;
case 2:
state = "Two";
break;
default:
state = "No valid number";
break;
}
El anterior código muestra un switch con una situación especial en donde por cada caso estamos asignando un valor a una variable sin ningún procedimiento adicional.
en C# tenemos ahora una manera de simplificar significativamente este código:
//switch as expression
int intValueForSwitch = 0;
var state = (intValueForSwitch) switch
{
(0) => "Zero",
(1) => "One",
(2) => "Two",
_ => "NO valid number"
};
Usando el operador flecha podemos asignar el valor de la variable en cada caso en una linea de código. y finalizando con el guion bajo y la flecha podemos asignar lo que seria el valor por defecto en el que antes usábamos ‘default:’
Puedes probarlo y utilizarlo con Visual 2019!
Revisa el historial de mejoras de C# en el siguiente repositorio: CSharpVersionsDemos