java - "switch case"已经存在,为什么还要学习 "if else"

标签 java c++ c coding-style

<分区>

Possible Duplicate:
Advantage of switch over if-else statement
Why Switch/Case and not If/Else If?

我目前正在学校学习“switch case”,我想知道在“if else”已经存在的情况下学习它的意义何在。 “if else”基本上是“switch case”的另一种方式。

如有错误请指正

最佳答案

听着有点怀旧。他们两个实际上“看起来”一样。但是当代码执行时有点不同。

首先,'switch-case' 仅用于比较值。但是“if-else”可以处理一个 boolean 表达式(它将支持更复杂的子句)

如果您在找到实际搜索的内容时使用一般的“if-else”,该过程仍会运行,直到它完成最后一个 if 的处理(但实际上它可以使用跳转技术来获得类似的机制,例如'开关盒'。) 如果您使用 'switch-case' 就不会发生这种情况,因为一旦找到您正在搜索的值,它就会中断并且不会继续下一个案例。此外,'switch-case' 比 if else 处理起来更快,因为它只比较定义的值(而不是表达式)。而且 'switch-case' 也有很好的格式结构(简单、紧凑、可读和干净)。

关于java - "switch case"已经存在,为什么还要学习 "if else",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13945034/

相关文章:

java - TreeMap 的 entrySet() 是否返回一个 TreeSet

java - 我java我想用单个空格替换所有空格字符,同时保留所有换行符和回车符

c++ - 为两个不同的私有(private)属性重载 += 运算符

c++ - 创建三个数组来填充 C 风格的字符串

c++ - 永无止境的 Win32 消息循环

c - 是否可以从同一头文件中的头文件调用函数? (C99)

java - Arduino bat 传感器注册次数过多

c - scanf 正则表达式 - C

c - Heapcrash - 通过增加指向堆的指针来段错误

java - 查找数组索引