if-else与switch

Posted pinking

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了if-else与switch相关的知识,希望对你有一定的参考价值。

对于条件分支语句,在设计条件的时候,需要考虑实际执行情况,才能提高效率,可以参考之前的博客:

https://www.cnblogs.com/pinking/p/9159931.html

现在主要讨论if-else与switch之间的区别

从执行效率角度来看:

对于if-else,至少执行if,这一次运算;而使用switch,实际是使用一个跳转表实现分支结构,不需要一次进行比较每一个所需要的条件,进行比较的次数为1。

从执行空间角度来看:

表的本质是一个拥有标号的数组,需要额外的存储空间,if-else语句的空间效率更好一点,switch是一个很典型的空间换时间的例子。

从灵活度来看:

  if-else判断的条件比较灵活;switch只能判断是一个指定值的数据,而不能对一个区间中的数据进行判断,这时候需要选择if-else语句。

以上是关于if-else与switch的主要内容,如果未能解决你的问题,请参考以下文章

三元?运算符与 C# 中的传统 If-else 运算符 [重复]

Python:为啥 if-else 一行语句在 else 中不能与 continue 一起使用?

将添加到注册表与 if-else 结合使用

switch-case与if-else的转换

将“for”循环与 if-else 语句相结合,每个“if”语句中都有多个条件

将DF1与DF2与if-else语句进行比较