Java Instruction Switch

J'ai un problème à l'aide de l'instruction switch quand j'ai essayé de composer avec une situation particulière.
Par exemple,
J'ai 3 cas: A, B, C.

  • pour Un, je veux faire statement_1 et statement_3.
  • pour B, je veux faire statement_2 et statement_3.
  • pour le C, j'ai envie de ne rien faire

si j'utilise if-else, il ressemble à la suivante:

 if ( not C){
    do statement_3

   if B
      do statement 2
   else if A
      do statement 1

 }

Si je veux utiliser l'instruction switch pour faire la même chose, j'ai des soucis.

switch (variable){
case A:  do statement_1
case B: do statement_2
//how to do statement 3 here?  
}

Je suis en essayant d'éviter la copie de codes. Donc, je pense que la façon de faire les codes aussi simple que je le peux.

Mise à JOUR de 1:

  1. pour faire mes codes/question plus claire, je veux juste faire mes codes
    en tant que simple/clair comme je peux, c'est pourquoi je veux utiliser l'instruction switch
    au lieu de if-else. Aussi, j'ai entendu dire que l'interrupteur de la déclaration est généralement
    plus rapide que if-else. (Je ne suis pas sûr à 100% si).
  2. Je veux utiliser switch-case parce que les Cas A, B, C sont de type enum. ils
    ne sont pas variable. Désolé pour la confusion.
  3. chaque consolidés sont plus que 10 lignes de codes. C'est pourquoi je ne veux pas faire les choses suivantes:
    switch (enum variable) {
    case A:
      statement1
      statement3
     break;
    case B:
      statement2
      statement3
     break;

    }

Ce code ne fonctionne pas, parce que Java 6 et plus attend une valeur d'un type primitif. Java 7 peut traitées qu'avec des Chaînes.
l'interrupteur n'est pas bon, vous ne pouvez pas ignorer les cas, c'est ce que vous avez à faire pour éviter de coder l'appel à statement_3 deux fois
quel est le problème avec if? Si un commutateur est pas le bon outil, ne l'utilisez pas. La plupart du temps, c'est pas le bon outil.
Je pense que le cas est trop belle...
Ou Remplacer le Conditionnel avec le Polymorphisme et de se débarrasser de la si / commutateur de

OriginalL'auteur Joey | 2013-07-23