zoukankan      html  css  js  c++  java
  • java如何获取当前日期和时间

    获取标准时间可以通过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(); // get 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(); // get 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(); // get 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(); // get 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  
    ————————————————

    原文链接:https://blog.csdn.net/topdeveloperr/article/details/91571311

     
  • 相关阅读:
    9.11 eventbus
    9.10,,,实现new instanceof apply call 高阶函数,偏函数,柯里化
    9.9 promise实现 写完了传到gitee上面了,这里这个不完整
    9.5cors配置代码
    9.5 jsonp 实现
    9.5 http tcp https总结
    9.3 es6 class一部分 and es5 class 发布订阅
    8.30 cookie session token jwt
    8.30vue响应式原理
    warning: LF will be replaced by CRLF in renard-wx/project.config.json. The file will have its original line endings in your working directory
  • 原文地址:https://www.cnblogs.com/yangsanluo/p/14489811.html
Copyright © 2011-2022 走看看