对于涉及if…else…else…这样的多条件判断,例如:
- if( val == 1)
- dostuff1();
- else if (val == 2)
- dostuff2();
- else if (val == 3)
- dostuff3();
使用switch可能更快:
- switch( val )
- {
- case 1: dostuff1(); break;
- case 2: dostuff2(); break;
- case 3: dostuff3(); break;
- }
在if()语句中,如果最后一条语句命中,之前的条件都需要被测试执行一次。
Switch允许我们不做额外的测试。如果必须使用if…else…语句,将最可能执行的放在最前面。
|