问题标签 [switch-statement]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
20 回答
109161 浏览

c# - 在 C# 中使用 if/else 和 switch-case 有什么显着区别吗?

在 C#中使用switch语句与使用语句的好处/缺点是什么。if/else除了代码的外观之外,我无法想象会有那么大的不同。

产生的 IL 或相关的运行时性能有什么根本不同的原因吗?

相关:什么更快,打开字符串或 elseif 类型?

0 投票
11 回答
19540 浏览

c# - 什么是失控 switch 语句的最佳替代方案?

我继承了一个项目,该项目有一些巨大的 switch 语句块,其中一些包含多达 20 个案例。重写这些的好方法是什么?

0 投票
10 回答
115601 浏览

switch-statement - 何时在 switch 语句上使用 If-else if-else,反之亦然

为什么要switch在一系列if语句上使用块?

switch语句似乎做同样的事情,但需要更长的时间来输入。

0 投票
8 回答
21924 浏览

c# - C# 使用 String.IsNullOrEmpty 切换

是否可以在 C# 中有一个开关来检查值是 null 还是空而不是 "" 但是String.Empty?我知道我可以这样做:

有没有更好的东西,因为我不想有大量的 IF 语句?

我正在尝试替换:

0 投票
4 回答
944 浏览

c# - C# switch 语句是否需要中断?

C# 是否适用于 C++,需要break;percase:吗?..默认是fall-thru - 不像VB

或者一旦发现它会自动破案吗?..默认是 break - 像 VB


编辑:所以它是两者的组合,默认为无- 您必须指定任一中断;或转到;

0 投票
5 回答
3000 浏览

svn - svn:switch 不适用于相对 svn:external?

我们有一个相对 svn 外部的子文件夹(../project/subfolder)。在新的主干结帐中,它指向(...TRUNK/project/subfolder),在新的分支结帐中,它指向(...BRANCH/branchName/project/subfolder)。但是,如果您对包含子文件夹的项目进行切换,则子文件夹将始终指向 TRUNK。或者,如果您进行 BRANCH 结帐并切换到 TRUNK,它会一直指向 BRANCH。

svn:switch 不应该更新相对外部吗?是否有某种递归 svn:switch 我应该运行?

0 投票
5 回答
69653 浏览

c# - 如果与开关速度

由于编译器优化,switch 语句通常比等效的 if-else-if 语句(如本文所述)更快。

这种优化实际上是如何工作的?有人有很好的解释吗?

0 投票
8 回答
86107 浏览

if-statement - 为什么是 switch 语句而不是 if-else?

我一直在想这个有一段时间了。到目前为止,我还不是一个铁杆程序员,主要是小型 Python 脚本,并且我已经编写了几个分子动力学模拟。对于真正的问题:switch 语句的意义何在?为什么不能只使用if-else 语句

感谢您的回答,如果之前有人问过这个问题,请指向链接。

编辑

S.Lott指出这可能是If/Else vs. Switch问题的重复。如果你想关闭,那么就这样做。我将保留它以供进一步讨论。

0 投票
9 回答
2271 浏览

c++ - #ifdef 在 switch 语句中的错误?

我有一些看起来像这样的代码:

SOMEMACRO 已定义,假设值为 4.. 为什么会跳过 case 4 和 5 而返回 FALSE?:(

是因为我没有默认情况,还是我不允许在 switch 语句中使用 ifdef?

0 投票
2 回答
8741 浏览

switch-statement - 用户模式与主管模式

我对类 Unix 机器上的用户模式和主管模式有几个问题。

用户模式和主管模式有什么区别?我知道用户进程无法访问所有内存和硬件并执行所有指令。还有更多吗?

不同模式有什么好处?

从用户模式切换到管理员模式时涉及哪些步骤?

当用户程序进行系统调用时,模式必须从用户模式更改为管理员模式。我在其他地方读到,这是通过使用 int x80 在 x86 机器上实现的。那么模式切换与中断处理有何不同呢?

它与上下文切换有何不同?

在不同的架构中是如何实现监督者模式的?

任何答案或指示将不胜感激!