Considera quanto segue:
if (x == 5 || x == 10 || x == 12) {
if (x == 5) {
doSomething()
} else if (x == 10) {
doSomethingElse()
} else {
doSomeOtherThing()
}
doMoreThings()
}
doThingsAfterThat()
Il secondo insieme di condizioni si sente ripetitivo, come le ho specificato nella condizione originale. Potrei separarlo in due condizionali, ma poi ripeterei 'doSomeOtherThings ()'.
Qual è il modo più elegante per gestirlo?
Modifica :
Questo non è un duplicato di modi eleganti per gestire if (if altro) . Le ragioni sono:
- Nella potenziale domanda duplicata, la condizione interna sta testando un valore diverso di quello che viene testato nella condizione originale. In questa domanda, le condizioni interne testate sono le stesse della condizione originale.
- In questa domanda, si deve prendere in considerazione più se, altrimenti se le affermazioni. La potenziale domanda duplicata non lo considera.