Avoid Switch statement redundancy when multiple Cases do the same thing?

13,660

Solution 1

case 1:
case 2:
case 3:
    aMethod();
    break;
case 4:
    anotherMethod();
    break;

This works because when it happens to be case 1 (for instance), it falls through to case 2 (no break statement), which then falls through to case 3.

Solution 2

Sure, you can allow case clause sections for 1 & 2 to 'fall through' to clause 3 and then break out of the switch statement after that:

case 1:
case 2:
case 3:
     aMethod();
     break;
case 4:
     anotherMethod();
     break;

Solution 3

It's called the "fall through" pattern:

case 1:  // fall through
case 2:  // fall through
case 3: 
   aMethod(); 
   break; 
case 4: 
   anotherMethod(); 
   break; 

Solution 4

Below is the best you can do

case 1:
case 2:
case 3:
     aMethod();
     break;
 case 4:
     anotherMethod();
     break;
Share:
13,660
Zargontapel
Author by

Zargontapel

I'm currently pursuing a dual bachelor's of science in Computer Engineering and Computer Science at West Virginia University. I love coding, and am always eager to seek a new challenge!

Updated on June 03, 2022

Comments

  • Zargontapel
    Zargontapel almost 2 years

    I have multiple cases in a switch that do the same thing, like so: (this is written in Java)

     case 1:
         aMethod();
         break;
     case 2:
         aMethod();
         break;
     case 3:
         aMethod();
         break;
     case 4:
         anotherMethod();
         break;
    

    Is there any way I can combine cases 1, 2 and 3 into one case, since they all call the same method?