老师布置一个作业让比较两段程序的时间效率,也就是计算程序运行时间,找到两个基本方法,以下是超级详细的解释!
这两个方法都是属于System类,包含所需的包: import java.lang.System;
方法一:currentTimeMillis()
currentTimeMillis()方法返回一个long类型的值(long是长整型),该值表示当前时间与1970年1月1日0点0分0秒的时间差,单位是毫秒,通常也将该值称作时间戳。
long startTime = System.currentTimeMillis(); //获取开始时间
doSomething(); //测试的代码段
long endTime = System.currentTimeMillis(); //获取结束时间
System.out.println("程序运行时间:" + (endTime - startTime) + "ms"); //输出程序运行时间
方法二:nanoTime()
如果刚才的毫秒怎么运行都是0ms,说明数量级太大了,我们采取nanoTime(),这个也是返回一个long类型,单位是纳秒.
ong startTime=System.nanoTime(); //获取开始时间
doSomeThing(); //测试的代码段
long endTime=System.nanoTime(); //获取结束时间
System.out.println("程序运行时间: "+(endTime-startTime)+"ns");
参考资料:
1.博客园里的java如何计算程序运行时间
2.Java基础入门(这是一本书)