int option=;

if(option ==)

{

  dosth();

}

else if(option==)

{

  dosth2();

}

else if(opion==)

{

  dosth3();

}

else

dosth4();

如果给option的一个值是2的话,那么程序会判断option是否等于0 ,再判断option是否等于1 最后再判断option等于2,多执行了两个判断,当然了,如果直接把option==3的判断放在最前面,那么就执行一次判断就可以了。

int option=;
switch(option){
case 0:
dosth1();
break;
case 1:
dosth2();
break;
case 2:
dosth3();
break;
default:
dosth4();
   break;
}

把多级elseif改成switch case的话,程序执行的时候就没有判断了,直接就到了option==2的代码处了,可能耗费更少的CPU,更环保了。

其实有点类似于 从数组中找是否存在某个数一样,一般的算法是分别取得数组中的一个数和待定的数比较,而稍微高级点的办法是用了索引或者hash,直接就找到了,速度更快。

最新文章

  1. CodeForces - 696B Puzzles
  2. 大图居中,以1920px为例
  3. 在GridView隐藏字段
  4. 【BZOJ 1492】【NOI 2007】货币兑换Cash
  5. [Effective JavaScript 笔记]第49条:数组迭代要优先使用for循环而不是for...in循环
  6. Qt实现停靠功能
  7. DBCP--""连接池创建"与"资源关闭"Util类
  8. libConfuse的使用
  9. (原+转)简明 Python 教程:总结
  10. --@ui-router--登录页通过路由跳转到内页的demo
  11. UVW代码漫谈(一)
  12. 201521123085《Java程序设计》第4周学习总结
  13. zsh fg: no job control in this shell.
  14. java基础编程练习
  15. Linux profile1,bashrc,.bash_profile,.bash_login,.profile,.bashrc,.bash_logout浅析 Part1
  16. Python 操作 Excel,总有一个模块适合自己
  17. innerText 与textContent区别
  18. [GIt] 团队工作效率分析工具gitstats
  19. DELPHI纤程的演示
  20. JDK之集合乱序源码分析

热门文章

  1. Instruments检测解决内存泄露以及进行性能测试
  2. 【spring源码学习】spring的IOC容器之BeanFactoryPostProcessor接口学习
  3. 转:使用django-admin.py创建django工程
  4. STM32GPIO管脚设置
  5. Oracle 13c OEM 安装手册
  6. (转)【Android】获取Mac地址【2】
  7. leetcode812
  8. delphi 手电筒
  9. 有一些sql 是必须要做笔记的!!
  10. 幂等性的含义和 HTTP请求方法的幂等性