【问题标题】:What's the difference between switches and conditionals? [duplicate]开关和条件有什么区别? [复制]
【发布时间】:2011-02-28 21:25:38
【问题描述】:

可能重复:
When to use If-else if-else over switch statments and vice versa

我确信它们从根本上来说是非常不同的东西,但在实际使用中,我从未发现它们之间存在任何差异的案例

switch (value){
    case 1:
        //Do stuff
        break;
    case 2:
        //Do other stuff
        break;
}

if (value == true){
    //Do stuff
}
else{
    //Do other stuff
}

在哪些示例场景中一个比另一个更合适? 从概念上讲,它们有何不同? 有没有表现语义优势?

【问题讨论】:

标签: conditional switch-statement


【解决方案1】:

它们是相似的,但不是等价的。 switch/case 语句通常用于决定在给定特定整数的情况下调用哪个例程,并且通常用于检查enum。对于这些情况,使用开关可能更具表现力和可读性。

if/else 计算一个布尔表达式。

【讨论】:

    猜你喜欢
    • 2015-11-23
    • 2013-02-13
    • 2011-04-26
    • 2016-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-14
    相关资源
    最近更新 更多