6.3. The switch Statement

You learned earlier that you could replace the RDC with a cascading if statement when you wanted to test for a specific day, as in our days-of-the-week example:

if (day == 1)
{
     doMondayStuff();
} else
     if (day == 2)
     {
          doTuesdayStuff();
     } else
           if (day == 3)
          {
               do WednesdayStuff();
           }

// The rest of the days are similar to above

While this code works just fine, it's difficult to read cascading if statements. That's because you still must match up the proper if statement with its associated day value. Secondly, if the cascade is fairly long, the code starts to scroll off to the right. Programmers hate horizontal scrolling because it wastes time. They would rather be able to read all the code without scrolling. The switch statement offers one way to resolve these drawbacks.

The syntax for the switch statement is as follows:

switch (expression1)
{
          case 1:

          // Statements for case 1
break;
          case 1:

          // Statements for case 2

              break;
          case 2:

          // Statements for case 3

              break;
          default:

          // Statements for default

              break;
          }

With a switch statement, the value of expression1 determines which case statement block is executed. If expression1 does not match any case statement, the default expression is evaluated. The break statements are necessary to prevent program control from "falling through" to the next case statement. The break statement causes program execution to resume with the first statement after the switch statement block's closing curly brace. You can rewrite your cascading ...

Get Beginning C# 3.0 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.