新日期类LocalDate,LocalTime,LocalDateTime
Java 8新增了LocalDate和LocalTime接口,方法更加实用。
java.util.Date和SimpleDateFormatter都不是线程安全的,而LocalDate和LocalTime和最基本的String一样,是不变类型,不但线程安全,而且不能修改。
Java 8中,日期和时间被明确划分为LocalDateLocalTimeLocalDate无法包含时间,LocalTime无法包含日期。

//获取日期
LocalDate date = LocalDate.now();
//获取时间
LocalTime time = LocalTime.now();
//同时获取日期和时间
LocalDateTime dateTime = LocalDateTime.now();
System.out.println(date);
System.out.println(time);
System.out.println(dateTime);

控制台打印
2021-08-24
11:36:01.979
2021-08-24T11:36:01.979

格式化

        //系统时间
        LocalDateTime localDateTime = LocalDateTime.now();
        //转换格式
        DateTimeFormatter dateTimeFormatter =   DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        String date = localDateTime.format(dateTimeFormatter);
        System.out.println(date);

控制台输出:2021-08-24 11:41:54

时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。

  • 获取当前时间戳
//获取时间戳,单位毫秒
 long l = System.currentTimeMillis();
  System.out.println(l);
  //
  Date date = new Date();
  long time = date.getTime();
  System.out.println(time);
  //
  long timeInMillis = Calendar.getInstance().getTimeInMillis();
  System.out.println(timeInMillis);
  • 时间戳转日期
//Date构造可直接转换
Date date1 = new Date(1574758172536L);
System.out.println(date1);
Last modification:August 24, 2021
如果觉得这篇技术文章对你有用,请随意赞赏