new Date().getTime()和System.currentTimeMillis()效率对

public static void main(String[] args) {

	    ArrayList<Long> l = new ArrayList<>(7500001);
	    long start= System.currentTimeMillis();
	    for(int i =0 ; i < 5000000; i ++){
	        long now = new Date().getTime();
	        l.add(now);
	    }
	    System.out.println("new date cost [" + (System.currentTimeMillis()- start) + "] ms");
	    l.clear();
	    
	    start= System.currentTimeMillis();
	    for(int i =0 ; i < 5000000; i ++){
            long now = System.currentTimeMillis();
            l.add(now);
        }
	    System.out.println("System.currentTimeMillis cost [" + (System.currentTimeMillis()- start) + "] ms");
	    l.clear();
	}

结果:

new date cost [1842] ms
System.currentTimeMillis cost [391] ms
时间: 2024-11-06 23:08:21

new Date().getTime()和System.currentTimeMillis()效率对的相关文章

new Date().getTime()和System.currentTimeMillis()对比

我在工作中,看项目组的代码时,在代码中会发现一个有趣的现象,有使用new Date().getTime()来获取时间戳的, 也有使用System.currentTimeMillis()来获取时间戳的,回想一下,好像我平日写代码也是想起哪种方式就用什么方式写.仔细思考一下,两者有什么区别吗?有没有哪个是最优的方式? 解决疑惑最优方式就是看源码,打开java.util.Date的源码可以发现,无参构造函数如下: public Date() { this(System.currentTimeMilli

Java 中时间处理 System.currentTimeMillis()

import org.testng.annotations.Test;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date; public class TestDate { @Test public void test01() throws ParseException { Date dt= new Date(); long s=System.currentTimeMilli

System.currentTimeMillis()和new Date().getTime()比较

获取时间毫秒数时System.currentTimeMillis()方法比new Date().getTime()效率高, 因为new Date().getTime()方法调用的System.currentTimeMillis() Date类的构造函数直接调用的System.currentTimeMillis()获取fastTime毫秒值: getTime()方法在cdate为空(Date对象在进行无参构造创建对象时cdate默认为null)的情况下直接返回fastTime.

java使用new Date()和System.currentTimeMillis()获取当前时间戳(转载)

转自:http://www.cnblogs.com/wuchen/archive/2012/06/30/2570746.html 在开发过程中,通常很多人都习惯使用new Date()来获取当前时间,使用起来也比较方便,同时还可以获取与当前时间有关的各方面信息,例如获取小时,分钟等等,而且还可以格式化输出,包含的信 息是比较丰富的.但是有些时候或许你并不需要获取那么多信息,你只需要关心它返回的毫秒数就行了,例如getTime().为了获取这个时间戳,很多人也喜欢使用new Date().getT

Java中使用new Date()和System.currentTimeMillis()获取当前时间戳的区别(转)(Java进阶-性能提升)

在开发过程中,通常很多人都习惯使用new Date()来获取当前时间,使用起来也比较方便,同时还可以获取与当前时间有关的各方面信息,例如获取小时,分钟等等,而且还可以格式化输出,包含的信息是比较丰富的.但是有些时候或许你并不需要获取那么多信息,你只需要关心它返回的毫秒数就行了,例如getTime().为了获取这个时间戳,很多人也喜欢使用new Date().getTime()去获取,咋一看没什么问题,但其实没这个必要.其实看一下Java的源码就知道了: public Date() { this(

java使用new Date()和System.currentTimeMillis()获取当前时间戳

在开发过程中,通常很多人都习惯使用new Date()来获取当前时间,使用起来也比较方便,同时还可以获取与当前时间有关的各方面信息,例如获取小时,分钟等等,而且还可以格式化输出,包含的信息是比较丰富的.但是有些时候或许你并不需要获取那么多信息,你只需要关心它返回的毫秒数就行了,例如getTime().为了获取这个时间戳,很多人也喜欢使用new Date().getTime()去获取,咋一看没什么问题,但其实没这个必要.其实看一下java的源码就知道了: public Date() { this(

Java进阶 十六 使用new Date 和System currentTimeMillis 获取当前时间戳

java使用new Date()和System.currentTimeMillis()获取当前时间戳 在开发过程中,通常很多人都习惯使用new Date()来获取当前时间,使用起来也比较方便,同时还可以获取与当前时间有关的各方面信息,例如获取小时,分钟等等,而且还可以格式化输出,包含的信息是比较丰富的.但是有些时候或许你并不需要获取那么多信息,你只需要关心它返回的毫秒数就行了,例如getTime().为了获取这个时间戳,很多人也喜欢使用new Date().getTime()去获取,咋一看没什么

java.util.Date和java.sql.Date以及System.currentTimeMillis()涉及到时间的问题

java.util.Date与java.sql.Date的区别 util.Date 1 java.util.Date nowUtil =new java.util.Date();//new了一个util.Date 2 SimpleDateFormat sdf=new SimpleDateFormat("yyyyMMMdd HH:mm:ss");//设置格式 3 String time = sdf.format(nowUtil); 5 System.out.println(nowUtil

System.currentTimeMillis()计算方式与时间的单位转换

目录[-] 一.时间的单位转换 二.System.currentTimeMillis()计算方式 一.时间的单位转换 1秒=1000毫秒(ms) 1毫秒=1/1,000秒(s)1秒=1,000,000 微秒(μs) 1微秒=1/1,000,000秒(s)1秒=1,000,000,000 纳秒(ns) 1纳秒=1/1,000,000,000秒(s)1秒=1,000,000,000,000 皮秒(ps) 1皮秒=1/1,000,000,000,000秒(s) 1分钟=60秒 1小时=60分钟=360