`
virusfu
  • 浏览: 183083 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

System.currentTimeMillis() vs. new Date() vs. Calendar.getInstance().getTime()

    博客分类:
  • java
 
阅读更多

System.currentTimeMillis() is obviously the most efficient since it does not even create an object, but new Date() is really just a thin wrapper about a long, so it is not far behind. Calendar, on the other hand, is relatively slow and very complex, since it has to deal with the considerably complexity and all the oddities that are inherent to dates and times (leap years, daylight savings, timezones, etc.).

System.currentTimeMillis的()显然是最有效的,因为它甚至不创建一个对象,

Date()仅仅是一个大约长的瘦包装器,所以它也不甘落后。

日历,是相对缓慢和非常复杂的,因为它有处理相当复杂和奇特,是固有的日期和时间(闰年,夏令时,时区等)

分享到:
评论

相关推荐

    java.util.Date与java.sql.Date互转及字符串转换为日期时间格式[文].pdf

    java.sql.Date sqlDate = new java.sql.Date(System.currentTimeMillis()); java.util.Date utilDate = new java.util.Date(sqlDate.getTime()); 二、字符串转换为日期时间格式 可以使用SimpleDateFormat将字符串...

    java获取当前时间戳的方法.doc.docx

    在测试中,`testDate`方法的执行时间介于`System.currentTimeMillis()`和`Calendar.getInstance().getTimeInMillis()`之间。 在进行性能敏感的操作时,`System.currentTimeMillis()`通常是最佳选择,因为它最简洁且...

    有关java中的Date,String,Timestamp之间的转化问题

    2. 使用 `java.sql.Date` 类:`System.out.println(new java.sql.Date(new java.util.Date().getTime()));`,输出结果不包含时分秒。 3. 使用 `SimpleDateFormat` 类:`SimpleDateFormat sdf = new SimpleDateFormat...

    java时间处理工具类--DateUtils

    this.fiducialDate = new Date(System.currentTimeMillis()); } this.cal = Calendar.getInstance(); this.cal.setTime(this.fiducialDate); this.cal.set(Calendar.HOUR_OF_DAY, 0); this.cal.set...

    java 获取当前日期时间和本周的星期一的日期时间.docx

    calendar.setTimeInMillis(System.currentTimeMillis()); System.out.println("当前时间: " + format.format(calendar.getTime())); } } ``` #### 三、获取本周星期一的日期时间 接下来,我们需要找到本周...

    JAVA中的时间操作[参照].pdf

    Calendar calendar = Calendar.getInstance(Locale.SIMPLIFIED_CHINESE); calendar.set(Calendar.YEAR, 2022); calendar.set(Calendar.MONTH, Calendar.JANUARY); calendar.set(Calendar.DAY_OF_MONTH, 1); calendar...

    java日期处理

    java.sql.Date sqlDate = new java.sql.Date(utilDate.getTime()); System.out.println(sqlDate); ``` #### 2. 将`java.util.Date`转换为特定格式的字符串 使用`java.text.DateFormat`类或者其子类(如`...

    java和js时间取值问题

    获取当前时间的时间戳(毫秒值)可以使用`System.currentTimeMillis()`或者`Date.getTime()`方法。 **示例代码:** ```java long time = System.currentTimeMillis(); System.out.println(time); ``` 或 ```java...

    JAVA System、Math、Date、DateFormat、Calendar

    尽管如此,`Date`在旧项目中仍然常见,它的`new Date()`构造器可以创建当前日期,`date.getTime()`返回自1970年1月1日以来的毫秒数。 `DateFormat`是格式化日期和时间的抽象类,提供了多种日期和时间格式化风格,如...

    Java 之 Date 和 Calendar

    calendar.setTimeInMillis(System.currentTimeMillis()); Date dateFromCalendar = calendar.getTime(); ``` 反之,从`Date`转换为`Calendar`: ```java calendar.setTime(date); ``` 总的来说,`Date`和`...

    timerTask实现每天定时一段时间内执行定时任务

    timer.schedule(new TimeTask(), startTime.getTime() - System.currentTimeMillis()); // 等待直到结束时间,避免立即调度下一个任务 try { Thread.sleep(endTime.getTime() - System.currentTimeMillis()); ...

    第五章.常用类.java.API概述——Date类,Calendar类,SimpleDateFormat类,Big.pdf

    可以使用System类的currentTimeMillis()方法获取当前系统的毫秒值,然后传递给Date类的构造方法来创建一个表示当前时间的Date对象。 【Calendar类】 Calendar是Java中的一个抽象类,它是Date类的替代品,提供了更...

    Date的Java源代码

    Date tomorrow = calendar.getTime(); ``` 这里使用 `Calendar` 类来增加或减少日期。 ### 6. 与Calendar类的关系 `java.util.Calendar` 是一个抽象类,它提供了更高级别的日期和时间操作。通常情况下,我们会在...

    小例子--当前时间加三天时间减一秒

    Date currentDate = new Date(System.currentTimeMillis()); Calendar calender = Calendar.getInstance(); calender.setTime(currentDate); System.out.println("时: " + currentDate.toLocaleString()); ...

    java datetime

    this.fiducialDate = new Date(System.currentTimeMillis()); } this.cal = Calendar.getInstance(); this.cal.setTime(this.fiducialDate); this.cal.set(Calendar.HOUR_OF_DAY, 0); this.cal.set(Calendar....

    Date类中的方法.docx

    另一种是通过`Date(System.currentTimeMillis())`,这里的`System.currentTimeMillis()`返回的是自1970年1月1日以来的毫秒数。 2. **非静态方法**:`Date`类中的方法,如`getHours()`, `getMinutes()`, `getSeconds...

    java中的时间操作

    Calendar cal = Calendar.getInstance(); cal.setTime(new Date()); cal.add(Calendar.DAY_OF_MONTH, 1); // 增加一天 Date tomorrow = cal.getTime(); ``` 2. **使用`java.time`包**: - 在`java.time`包中...

    java 面试题大全

    Date d = new Date(System.currentTimeMillis()); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); System.out.println(sdf.format(d)); ``` #### 获取自1970年1月1日以来的时间戳 通过调用...

    java中各种时间格式的转化要点.pdf

    如果需要获取当前时间,可以使用 `new Date()` 或 `System.currentTimeMillis()`。 java.util.Calendar java.util.Calendar 是一个抽象类,提供了一个通用的时间操作接口。Calendar 对象可以通过 `Calendar....

    获取时间和日期

    考虑到闰秒的存在,使用`System.currentTimeMillis()`可能无法准确获取时间,因为此方法不处理闰秒。对于高精度时间需求,可以使用`System.nanoTime()`,但需注意单位转换。 9. **日期和时间的操作** `Calendar`...

Global site tag (gtag.js) - Google Analytics