Calendar和Date之间的转换;system.nanotime()方法;以及System.currentTimeMillis()方法 分别计算运行效率
Posted 小智RE0
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Calendar和Date之间的转换;system.nanotime()方法;以及System.currentTimeMillis()方法 分别计算运行效率相关的知识,希望对你有一定的参考价值。
Calendar和Date之间的转换
- (1) Calendar转化为Date;
Calendar calendar=Calendar.getInstance();
Date date=calendar.getTime();
- (2) Date转化为Calendar;
Date date=new Date();
Calendar calendar=Calendar.getInstance();
calendar.setTime(date);
system.nanotime()方法;以及System.currentTimeMillis()方法 分别计算运行效率
使用system.nanotime()方法:返回的是时间的纳秒值;
1 纳秒 = 0.000001 毫秒
system.nanotime()方法记录的时间起点为随机的.
// System.nanoTime() :返回的是时间的纳秒值
//开始时间;
long start = System.nanoTime();
//执行的一段代码;
String str="100";
for (int i = 0; i < 10000; i++) {
//为字符串str追加字符
str+="Java,";
}
System.out.println(str);
//结束时间;
long end = System.nanoTime();
System.out.println("时间差为:"+(end-start));
//时间差为:457084700
//457084700 纳秒 = 457.08 毫秒
换算得到的system.nanotime()方法时间差
457084700 纳秒 = 457.08 毫秒
System.currentTimeMillis()方法得到的时间差
455毫秒
使用System.currentTimeMillis()方法返回的是毫秒值;
这里的毫秒值为:当前计算机时间和GMT时间(格林威治时间)1970年1月1号0时0分0秒所差的时间差毫秒数。
//使用System.currentTimeMillis();返回的是毫秒值;
//开始时间;
long start= System.currentTimeMillis();
//执行的一段代码;
String str="100";
for (int i = 0; i < 10000; i++) {
//为字符串str追加字符
str+="Java,";
}
System.out.println(str);
long end=System.currentTimeMillis();
System.out.println("时间差为:"+(end-start));
//时间差为:455
对于这段相同的代码,排除机器运行环境等影响因素;system.nanotime()方法的相对于System.currentTimeMillis()方法来说,精度要准一点.由于system.nanotime()方法最终的返回值是以纳秒为单位的;
但是;System.currentTimeMillis()方法是和日期时间相关的,
system.nanotime()方法却没有这个计算功能
以上是关于Calendar和Date之间的转换;system.nanotime()方法;以及System.currentTimeMillis()方法 分别计算运行效率的主要内容,如果未能解决你的问题,请参考以下文章