include::../description.adoc[] == Noncompliant Code Example Case 1, the code is syntactically correct but the behavior is not the expected one ---- switch (day) { case MONDAY: case TUESDAY: WEDNESDAY: // instead of "case WEDNESDAY" doSomething(); break; ... } ---- Case 2, the code is correct and behaves as expected but is hardly readable ---- switch (day) { case MONDAY: break; case TUESDAY: foo:for(i = 0 ; i < X ; i++) { /* ... */ break foo; // this break statement doesn't relate to the nesting case TUESDAY /* ... */ } break; /* ... */ } ---- == Compliant Solution Case 1 ---- switch (day) { case MONDAY: case TUESDAY: case WEDNESDAY: doSomething(); break; ... } ---- Case 2 ---- switch (day) { case MONDAY: break; case TUESDAY: compute(args); // put the content of the labelled "for" statement in a dedicated method break; /* ... */ } ----