当前位置:  开发笔记 > 编程语言 > 正文

如果vs Case语句

如何解决《如果vsCase语句》经验,为你挑选了4个好方法。

在处理多个条件时使用if-else和case语句之间是否存在性能差异?

哪个更受欢迎?



1> Thomas Bonin..:

在某些语言中,如C,switch可能更快,因为它通常用跳转表实现.不过,现代编译器有时也很聪明,可以使用一个if.

无论如何,它可能无关紧要,微优化(几乎)永远不会有用.



2> Alex Brasetv..:

使用在给定上下文中最可读的那个.



3> David Brunel..:

如果您有多个ifelse,我建议切换/选择.然后,它并不总是有效.

假设你有类似的东西(不推荐但仅举例)

If a > 0 and b > 0 then

' blabla
ElseIf b = -5 then

' blabla2
ElseIf a = -3 and b = 6 then

End If

使用开关/选择不是要走的路.但是,在查询此类变量的特定值时

select case a

        case 1:
           ' blabla
        case 2:
           ' blabla2
        case 3:
           ' blabla3
        case 4:
           ' blabla4
        case else:
end select

在这种情况下,我强烈推荐它,因为它对其他人更具可读性.



4> Paul Stephen..:

一些编程语言限制何时可以使用switch/ casestatements.例如,在许多类C语言中,case值必须是编译时已知的常量整数.

这两种技术的性能特征可能不同,但您不可能提前预测它们是什么.如果性能对于应用程序中的此代码非常重要,请确保在决定之前分析这两种方法,因为答案可能会让您感到惊讶.

通常,性能差异可以忽略不计,因此您应该选择最易读,易懂和可维护的代码,就像在任何其他编程情况下一样.

推荐阅读
小白也坚强_177
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有