C#'s switch statement has two ‘improvements’ over that of Java's:
It is not possible to fall through from one arm to the next. So:
case 0: i = 1; case 1: j = 2;
is illegal. An arm must end in a statement that transfers control. Four examples of such statements are:
break; goto case 1; goto default; return;
switch ( tCommand ) { case "add": ... break; case "remove": ... break; }