caseにbreakが必須というのがCなどの汚さの一つとされてきたが、
そうでもない例がある。

switch(num) {
case x: case y: case z: foo(); break;
case a: case k: bar(); break;
case b: case c: baz(); break;
}

break無しだとかえって冗長になるはず。