If 和 switch有什么区别,以及在什么时候使用Switch if:能判断具体的值,区间和boolean类型表达式, switch:只能对具体的值进行判断,值的个数是确定的,byte,short,int,char。 if判断是遍历性的,代码执行效率是不高的。 而switch...case会生成一个跳转表来指示实际的case分支的地址, 而这个跳转表的索引号与switch变量的值是相等的。 在确切知道条件结果,并且结果有限下的条件下可以使用switch,如枚举 在不能确切表示结果的情况下,或者处理复杂的逻辑关系最好用if...else, 在使用switch时候一定要注意break的使用。 switch语句特点: 1、switch语句选择的类型只有四种:byte,short,int,char。 2、case与default没有顺序。先执行第一个case,没有匹配的case执行default。 3、结束switch语句的两种情况:①遇到break,②执行到switch语句结束。 4、如果匹配的case或者default没有对应的break,那么程序会继续向下执行,运行可以执行的语句,直到遇到break或者switch结尾结束。 5、进入switch语句后,执行顺序是先执行case,然后从上到下,最后再执行default。即使default放在case上面,执行顺序也不变。
|