日期时间格式化
-
JDK8之前:SimpleDateFormat来进⾏格式化,但SimpleDateFormat并不是线程安全的
-
JDK8之后:引⼊线程安全的⽇期与时间DateTimeFormatter
-
案例
import java.time.Duration;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
public class Main {
public static void main(String[] args) throws Exception {
// 时间格式化
LocalDateTime ldt = LocalDateTime.now();
System.out.println(ldt);
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String ldtStr = dtf.format(ldt);
System.out.println(ldtStr);
// 获取指定的⽇期时间对象
LocalDateTime ldt1 = LocalDateTime.of(2020, 11, 11, 8, 20, 30);
System.out.println(ldt1);
// 当前时间
LocalDateTime today = LocalDateTime.now();
System.out.println(today);
// 指定时间
LocalDateTime changeDate = LocalDateTime.of(2020, 10, 28, 12, 32, 30);
System.out.println(changeDate);
// 计算时间差
Duration duration = Duration.between(today,changeDate);
System.out.println(duration.toDays()); //两个时间差的天数
System.out.println(duration.toHours()); //两个时间差的小时数
System.out.println(duration.toMinutes()); //两个时间差的分钟数
System.out.println(duration.toMillis()); //两个时间差的毫秒数
System.out.println(duration.toNanos()); //两个时间差的纳秒数
}
}