Java测试程序运行时间 实现

转载自CSDN下载资源,源地址:http://download.csdn.net/download/woshishenghua/856964


2.这两段代码都是一个外循环嵌一个内循环,void function1(void)外循环的次数为1000000,内循环的次数为100,void function2(void)外循环的次数为100,内循环的次数为1000000,个人认为:“当处理器执行类似结构的代码时,从内循环的循环体跳到外循环语句时,代价较大(耗费的时间多),从内循环的循环体跳到内循环语句时,代价较小(耗费的时间少),所以,在循环的总次数一定的条件下,要想使整个代码的执行时间最少,应该尽量使外循环的次数少,内循环的次数多”,所以void function2(void)运行的实际时间比voidfunction1(void)运行的实际时间少。

证明:

/*System.currentTimeMillis()的功能为返回1970年1月1日到此时此刻的毫秒数*/

import java.io.*;

class function1{

        public static void main(String[] args)

        {long i,j,a,function1;long starttime=System.currentTimeMillis(); /*1970年1月1日到此时此刻的毫秒数*/

         for(i=0;i<1000000;i++)

         {for(j=0;j<100;j++)

           {a=1;}

         }

         long endtime=System.currentTimeMillis();/*1970年1月1日到此时此刻的毫秒数*/

 

         function1=endtime-starttime;/*function1的运行时间*/

         System.out.println("function1(void)的运行时间为"+function1);

        }

         }

 

import java.io.*;

class function2{

        public static void main(String[] args)

        {long i,j,a,function2;long starttime=System.currentTimeMillis();/*1970年1月1日到此时此刻的毫秒数*/

 

         for(i=0;i<100;i++)

         {for(j=0;j<1000000;j++)

          {a=1;}

         }

         long endtime=System.currentTimeMillis();/*1970年1月1日到此时此刻的毫秒数*/

 

         function2=endtime-starttime; /*function2的运行时间*/

         System.out.println("function2(void)的运行时间为"+function2);

        }

         }

 

 

程序运行结果:

function1(void)的运行时间为 313

function2(void)的运行时间为 281

由截图可知function1(void)的运行时间为313毫秒,function2(void)的运行时间为281毫秒,因此function2(void)运行的更快。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值