estoy usando Java 6.caso interruptor de Java - por defecto vs enumeración explícita
Supongamos que tengo una enumeración con 6 valores, ordenado de A a F. Sobre 4 de los valores se manejaron de la misma. Podría escribirlo así.
switch (whichType) {
case A:
case B:
case C:
case D:
return task();
case E:
return someothertask();
case F:
return anothersomeothertask();
}
O como este.
switch (whichType) {
case E:
return someothertask();
case F:
return anothersomeothertask();
default:
return task();
}
Los valores nulos nunca llegarán a este modificador.
En términos de concisión y claridad, el segundo enfoque es mejor. En términos de ser explícito, creo que el primer enfoque es mejor.
¿Hay otros pros/contras de cada enfoque?
Además, esta simple pregunta corre el riesgo de ser un duplicado, pero lo intenté y no pude encontrarlo en ninguna otra parte. Me disculpo si no lo he buscado lo suficientemente bien.
agregue un método abstracto a su clase enum? – Ron
Solo para el registro: puede poner una sección 'default' en la parte superior, en el centro o en cualquier otro lugar dentro del' switch'; no tiene que estar en la parte inferior. –
@ ChrisJester-Young Pero algunos analizadores de código estático prohíben poner valores predeterminados en posiciones que no sean inferiores. – mjafari