关于LocalDateTime的学习
LocalDateTime是Java8的新时间日期API。
1:LocalDate: 表示没有时区的日期, LocalDate是不可变并且线程安全的(只含年月日的日期对象)。
2:LocalTime: 表示没有时区的时间, LocalTime是不可变并且线程安全的(只含时分秒的时间对象)。
3:LocalDateTime: 表示没有时区的日期时间, LocalDateTime是不可变并且线程安全的( 同时含有年月日时分秒的日期对象)。
获取当前时间
LocalDate localDate = LocalDate.now();
LocalTime localTime = LocalTime.now();
LocalDateTime localDateTime = LocalDateTime.now();
时间与时间之间的转换
LocalDateTime dt = LocalDateTime.now(); // 当前日期和时间
LocalDate d = dt.toLocalDate(); // 转换到当前日期
LocalTime t = dt.toLocalTime(); // 转换到当前时间
DateTimeFormatter
和SimpleDateFormat不同的是,DateTimeFormatter不但是不变对象,它还是线程安全的。因为SimpleDateFormat不是线程安全的,使用的时候,只能在方法内部创建新的局部变量。而DateTimeFormatter可以只创建一个实例,到处引用。
/**
* @Author Yangy
* @Date 2023/1/13
* 日期格式
*/
public class LocalDateTimeQuery {
public static final String DATE_DEFAULT_PATTEN = "yyyy/MM/dd";
public static final String DATE_TIME_DEFAULT_PATTEN = "yyyy/MM/dd HH:mm:ss";
}
//String 转 localdatetime
String dateTimeStr= "2016-10-25 12:00:00";
DateTimeFormatter formatter02 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime localDateTime=LocalDateTime.parse(dateTimeStr,formatter02);
//localdatetime 转 String(格式化)
DateTimeFormatter formatter02 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String format = localDateTime.format(formatter02);