为了将来的读者和我自己以后的理智,我想绝对清楚地switch说明,不能省略没有default案例(由于涵盖了所有案例)或if-elseif-else与不应做任何事情的最终 else连续的语句并包含对此的评论(参见示例)。
但是,每当我default在语句中包含 caseswitch并将其留空时,我必须在defaultcase 中放置一个分号,否则会出现编译器错误:“ Line [Line of closing Bracket of switch statement]`missing ';' 在 '}'" 发生之前。为什么?!
示例:生成编译器错误
switch(direction) {
    case MOVE_UP:
    //...
    break;
    case MOVE_RIGHT:
    //...
    break;
    case MOVE_DOWN:
    //...
    break;
    case MOVE_LEFT:
    //...
    break;
    default:
        /* DO NOTHING */
}
示例:不生成编译器错误
switch(direction) {
    case MOVE_UP:
    //...
    break;
    case MOVE_RIGHT:
    //...
    break;
    case MOVE_DOWN:
    //...
    break;
    case MOVE_LEFT:
    //...
    break;
    default:
        /* DO NOTHING */;
}