欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

java 获取当前时间的三种方法

程序员文章站 2022-05-04 19:16:07
总结java里面关于获取当前时间的一些方法 system.currenttimemillis() 获取标准时间可以通过system.currenttimemillis(...

总结java里面关于获取当前时间的一些方法

system.currenttimemillis()

获取标准时间可以通过system.currenttimemillis()方法获取,此方法不受时区影响,得到的结果是时间戳格式的。例如:

1543105352845 

我们可以将时间戳转化成我们易于理解的格式

simpledateformat formatter= new simpledateformat("yyyy-mm-dd 'at' hh:mm:ss z");
date date = new date(system.currenttimemillis());
system.out.println(formatter.format(date));

则该时间戳对应的时间为:

2018-11-25 at 01:22:12 cet

值得注意的是,此方法会根据我们的系统时间返回当前值,因为世界各地的时区是不一样的。

java.util.date

在java中,获取当前日期最简单的方法之一就是直接实例化位于java包java.util的date类。

date date = new date(); // this object contains the current date value 

上面获取到的日期也可以被format成我们需要的格式,例如:

simpledateformat formatter = new simpledateformat("dd-mm-yyyy hh:mm:ss"); 
system.out.println(formatter.format(date)); 

calendar api

calendar类,专门用于转换特定时刻和日历字段之间的日期和时间。

使用calendar 获取当前日期和时间非常简单:

calendar calendar = calendar.getinstance(); // gets current instance of the calendar 

与date一样,我们也可以非常轻松地format这个日期成我们需要的格式

simpledateformat formatter = new simpledateformat("dd-mm-yyyy hh:mm:ss"); 
system.out.println(formatter.format(calendar.gettime())); 

上面代码打印的结果如下:

25-11-2018 00:43:39

date/time api

java 8提供了一个全新的api,用以替换java.util.date和java.util.calendar。date / time api提供了多个类,帮助我们来完成工作,包括:

  • localdate
  • localtime
  • localdatetime
  • zoneddatetime
  • localdate

localdate只是一个日期,没有时间。 这意味着我们只能获得当前日期,但没有一天的具体时间。

localdate date = localdate.now(); // gets the current date 

我们可以format它

datetimeformatter formatter = datetimeformatter.ofpattern("dd-mm-yyyy"); 
system.out.println(date.format(formatter)); 

得到的结果只有年月日,例如:

25-11-2018

localtime

localtime与localdate相反,它只代表一个时间,没有日期。 这意味着我们只能获得当天的当前时间,而不是实际日期:

localtime time = localtime.now(); // gets the current time 

可以按如下方式format

datetimeformatter formatter = datetimeformatter.ofpattern("hh:mm:ss"); 
system.out.println(time.format(formatter)); 

得到的结果类似如下:

00:55:58 

localdatetime

最后一个是localdatetime,也是java中最常用的date / time类,代表前两个累的组合 - 即日期和时间的值:

localdatetime datetime = localdatetime.now(); // gets the current date and time 

format的方式也一样

datetimeformatter formatter = datetimeformatter.ofpattern("dd-mm-yyyy hh:mm:ss"); 
system.out.println(datetime.format(formatter)); 

得到的日期结果类似于:

25-11-2018 00:57:20 

总结

以上所述是小编给大家介绍的java 获取当前时间的三种方法,希望对大家有所帮助