打印
[产品应用]

用switch()函数替代if…else…

[复制链接]
1348|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
AdaMaYun|  楼主 | 2024-3-7 19:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

对于涉及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…语句,将最可能执行的放在最前面。

使用特权

评论回复
评论
forgot 2024-3-13 09:54 回复TA
各有各的好处 
沙发
LOVEEVER| | 2024-3-9 19:30 | 只看该作者
在if()语句中,如果最后一条语句命中,之前的条件都需要被测试执行一次。

使用特权

评论回复
板凳
星辰大海不退缩| | 2024-3-11 13:19 | 只看该作者
注意事项很细节,如果必须使用if…else…语句,将最可能执行的放在最前面。

使用特权

评论回复
地板
OKAKAKO| | 2024-3-11 17:45 | 只看该作者
涉及if…else的语句尽量进行语法优化

使用特权

评论回复
5
小小蚂蚁举千斤| | 2024-3-18 15:12 | 只看该作者
在if()语句中,如果最后一条语句命中,之前的条件都需要被测试执行一次。

使用特权

评论回复
6
小夏天的大西瓜| | 2024-3-19 09:45 | 只看该作者
如果必须使用if…else…语句,将最可能执行的放在最前面。

使用特权

评论回复
7
中国龙芯CDX| | 2024-3-21 15:15 | 只看该作者
switch相较于其他语句可能更快

使用特权

评论回复
8
szt1993| | 2024-3-25 15:42 | 只看该作者
用选择SWITCH语句比较多,相对比较方便

使用特权

评论回复
9
chenjun89| | 2024-4-3 08:03 | 只看该作者
switch的语义理解也有更清晰一些。

使用特权

评论回复
10
jf101| | 2024-4-14 16:17 | 只看该作者
还是switch语句比较实用

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

248

主题

1917

帖子

3

粉丝