2019独角兽企业重金招聘Python工程师标准>>>

/*** */
package com.ubuntuvim.test;/*** 测试多个if和if……else 的效率*/
public class IfandIfElseEffic {private static int COUNT = 100000000;public static void main(String[] args) {long start1 = System.currentTimeMillis();ifMethod();System.out.println("耗时: " + (System.currentTimeMillis() - start1));long start2 = System.currentTimeMillis();ifElseMethod();System.out.println("耗时: " + (System.currentTimeMillis() - start2));}private static void ifElseMethod() {for (int i = 0; i < COUNT; i++) {if (1 == i) {}if (123 == i) {}if (1234 == i) {}if (12 == i) {}if (12345 == i) {}if (123456 == i) {}if (654321 == i) {}if (54321 == i) {}if (4321 == i) {}if (321 == i) {}if (21 == i) {}if (31 == i) {}if (41 == i) {}if (76555 == i) {}if (444444 == i) {}}}/*** @author chendequan* @Email 1527254027@qq.com* @datatime 2015-1-28 上午11:00:19* void*/private static void ifMethod() {for (int i = 0; i < COUNT; i++) {if (1 == i) {} else if (123 == i) {} else if (1234 == i) {} else if (12 == i) {} else if (12345 == i) {} else if (123456 == i) {} else if (654321 == i) {} else if (54321 == i) {} else if (4321 == i) {} else if (321 == i) {} else if (21 == i) {} else if (31 == i) {} else if (41 == i) {} else if (76555 == i) {} else {}}}
}

执行结果如下

差别这么大!!

转载于:https://my.oschina.net/ubuntuvim/blog/372607

这样的例子能说明if,else的效率比单单的if组合高相关推荐

  1. 架构设计 例子和实践

    系统设计说明书(架构.概要.详细)目录结构 虽然这些文档一般来说公司都是有模板的,但我写这些文档以来基本上是每写一次就把目录结构给改一次,应该说这是因为自己对这些文档的理解开始加深,慢慢的越来越明白这 ...

  2. C/C++——++i、i+=1、i++之间的区别(附在学习boost时遇到的例子)

    首先,对于++i和i++的区别是早就认识到了,效率肯定是前置++i更高,因为后者还需要产生临时变量. 查了相关资料 其实这个问题可以从三个角度去分析:语言规范,编译器实现,CPU支持.首先从语言规范上 ...

  3. 四个简单例子教你通过用户行为记录提高用户体验之 “快的用户体验”

    写在前面的话 也许你的网站并不销售任何东西,但网站上所有内容抵达给用户,天然就存在一个名词"用户体验".说到用户体验,它给人的第一印象总是:抽象,带有强烈的主观意识:难以量化.不好 ...

  4. py4CV例子3Mnist识别和ANN

    1.什么是mnist数据集: mnist是一个被重度使用的数字手写字符集.它来自美国国家标准与技术研究所, National Institute of Standards and Technology ...

  5. java nio设计模式_Java NIO:浅析I/O模型

    也许很多朋友在学习NIO的时候都会感觉有点吃力,对里面的很多概念都感觉不是那么明朗.在进入Java NIO编程之前,我们今天先来讨论一些比较基础的知识:I/O模型.下面本文先从同步和异步的概念 说起, ...

  6. c++引用与指针的区别

    ★ 相同点: 1. 都是地址的概念: 指针指向一块内存,它的内容是所指内存的地址:引用是某块内存的别名. ★ 区别: 1. 指针是一个实体,而引用仅是个别名: 2. 引用使用时无需解引用(*),指针需 ...

  7. Linux的epoll

    在linux的网络编程中,很长的时间都在使用select来做事件触发.在linux新的内核中,有了一种替换它的机制,就是epoll. 相比于select,epoll最大的好处在于它不会随着监听fd数目 ...

  8. IO复用之epoll系列

    epoll是什么? epoll是Linux内核为处理大批量文件描述符而作了改进的poll,是Linux下多路复用IO接口select/poll的增强版本,它能显著提高程序在大量并发连接中只有少量活跃的 ...

  9. Oracle SQL高级编程——分析函数(窗口函数)全面讲解

    Oracle SQL高级编程--分析函数(窗口函数)全面讲解 注:本文来源于:<Oracle SQL高级编程--分析函数(窗口函数)全面讲解> 概述 分析函数是以一定的方法在一个与当前行相 ...

最新文章

  1. 使用Python,OpenCV从静态背景中提取移动前景
  2. 外界对程序员的误解究竟有多深?
  3. python cx_oracle_Python3安装cx_Oracle连接oracle数据库实操总结
  4. Python标准库:itertools迭代器函数
  5. Collaborative Filter - Data Mining基础(ACM暑校)
  6. 使用 selector 从 SAP Spartacus state 里读取 Cart 数据
  7. python中excel制作成绩报表_python制作简单excel统计报表2之操作excel的模块openpyxl简单用法...
  8. DevExpress GridView 添加和设置右键菜单
  9. 舍弃Python,为什么知乎选用Go重构推荐系统?
  10. html5怎么在画布怎么旋转,javascript – 如何旋转HTML5画布的现有内容?
  11. 小程序自定义tabBar(类似咸鱼)
  12. html自动弹出公告代码,网页html弹窗公告代码
  13. MXF Operational Pattern 1a (OP1a)
  14. 墨天轮“高可用架构”干货文档分享(含Oracle、MySQL、PG资料124篇)
  15. Java程序员薪资分级,你想到第几级?
  16. JAVA 三种方式计算1加到100的结果
  17. Tomcat服务读取静态图片/静态资源
  18. oracle hot patch david,Hot Patch工具Rollout
  19. 酒店:二维码如何应用于酒店管理
  20. 原生javascript-图片爆炸的效果

热门文章

  1. ReentrantLock和Condition理解及应用
  2. Linux整合Apache和SVN
  3. SHELL脚本自动化部署MFS分布式文件系统
  4. CFA考试一二三级经验,我写的很仔细......
  5. Linux中ifreq 结构体分析和使用
  6. Meteor:网络应用开发的瑞士军刀
  7. SOLID面向对象模式浅析
  8. spring-amqp整合rabbitmq消费者配置和代码
  9. 关于Nginx的limit_conn模块的思考
  10. 请问一个跨进程调用的问题?