For循环效率
来源:互联网 发布:最新数据库编程工具 编辑:程序博客网 时间:2024/05/23 19:11
1、单层for循环
long start =System.currentTimeMillis();int sum=0;
for(int i=0;i<1000000000;i++)
{
sum=1+1;
}
long end = System.currentTimeMillis();
System.out.println(end-start); //输出时间差为3-5之间
2、双层for循环
long start =System.currentTimeMillis();int sum=0;
for(int i=0;i<1;i++)
{
for(int j=0;j<1000000000;j++)
sum=1+1;
}
long end = System.currentTimeMillis();
System.out.println(end-start); //输出时间差为3-8之间
3、双层for循环
long start =System.currentTimeMillis();int sum=0;
for(int i=0;i<1000000000;i++)
{
for(int j=0;j<1;j++)
sum=1+1;
}
long end = System.currentTimeMillis();
System.out.println(end-start);//输出时间差为1000以上
比较1、2、3中三种情况下,消耗情况
i<10000
i<10000 j<1
i<1 j<10000
以上可见,优化for循环时,可以把实例化和初始化放在循环之外进行。
修改如下:
(1) long start =System.currentTimeMillis();int i=0;
int j=0;
int sum=0;
for(;i<1000000000;i++)
{
sum=1+1;
}
long end = System.currentTimeMillis();
System.out.println(end-start); //输出4
(2) long start =System.currentTimeMillis();
int i=0;
int j=0;
int sum=0;
for(;i<1000000000;i++)
{
for(;j<1;j++)
sum=1+1;
}
long end = System.currentTimeMillis();
System.out.println(end-start); //输出5
(3) long start =System.currentTimeMillis();
int i=0;
int j=0;
int sum=0;
for(;i<1;i++)
{
for(;j<1000000000;j++)
sum=1+1;
}
long end = System.currentTimeMillis();
System.out.println(end-start); //输出5
阅读全文
0 0
- for循环 时间效率
- for 循环 效率
- for循环执行效率
- for循环效率
- for循环效率对比
- for循环效率
- 优化for循环效率
- For循环效率
- for循环效率问题
- for循环嵌套的效率
- for循环效率问题整理
- 一个for循环的效率
- 有关for循环的效率
- for循环各种算法效率
- for循环的效率问题
- Java For循环效率测试
- for循环嵌套的效率
- Java for循环写法效率
- java面试题持续更新
- oracle 删除用户时" 表或视图不存在"的问题
- ML算法(常见机器学习算法公式)
- Struts2类型转换器
- vue1.0与vue2.0区别之组件通信
- For循环效率
- Linux脚本学习攻略18
- hdu 1011 starship troopers
- Tomcat启用HTTPS协议配置过程
- my first hhh
- CentOS 集群机器之间ssh免密
- PHP无限级分类实现(递归+非递归)
- mysqlreport输入内容详解
- android 引导页(一)