JAVA8日期时间LocalDate,LocalTime,LocalDateTime类使用
新日期类LocalDate,LocalTime,LocalDateTime
Java 8新增了LocalDate和LocalTime接口,方法更加实用。
java.util.Date和SimpleDateFormatter都不是线程安全的,而LocalDate和LocalTime和最基本的String一样,是不变类型,不但线程安全,而且不能修改。
Java 8中,日期和时间被明确划分为LocalDate
和LocalTime
,LocalDate
无法包含时间,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);
当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »