LocalDate
//获取当前日期
LocalDate now = LocalDate.now();
//获取指定日期
LocalDate localDate = LocalDate.of(2024, 1, 1);
//Date转LocalDate
Date date = new Date();
Instant instant = date.toInstant();
LocalDate dateToLocalDate = instant.atZone(ZoneId.systemDefault()).toLocalDate();
//LocalDate转Date
Date localDateToDate = Date.from(now.atStartOfDay(ZoneId.systemDefault()).toInstant());
//String转LocalDate
LocalDate stringToLocalDate = LocalDate.parse("2023-05-01", DateTimeFormatter.ofPattern("yyyy-MM-dd"));
//LocalDate转String
String localDateToString = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
//获取月份的第一天
LocalDate monthFirstDay1 = LocalDate.now().withDayOfMonth(1);
LocalDate monthFirstDay2 = LocalDate.now().with(TemporalAdjusters.firstDayOfMonth());
//获取月份的最后一天
LocalDate monthEndDay = LocalDate.now().with(TemporalAdjusters.lastDayOfMonth());
//获取当前日期的前几天
//前一天
LocalDate beforeDate = LocalDate.now().plusDays(-1);
//前一周
LocalDate beforeWeekDate = LocalDate.now().plusWeeks(-1);
//前一个月
LocalDate beforeMonthDate = LocalDate.now().plusMonths(-1);
//前一年
LocalDate beforeYearDate = LocalDate.now().plusYears(-1);
//获取当前日期的后几天
//后一天
LocalDate afterDate = LocalDate.now().plusDays(1);
//后一周
LocalDate afterWeekDate = LocalDate.now().plusWeeks(1);
//后一个月
LocalDate afterMonthDate = LocalDate.now().plusMonths(1);
//后一年
LocalDate afterYearDate = LocalDate.now().plusYears(1);
//获取日期的年份
int year = now.getYear();
//获取日期的月份
int month = now.getMonthValue();
//获取日期是当月的第几天 -- 返回1
int dayOfMonth = LocalDate.of(2023, 2, 1).getDayOfMonth();
//获取周几 -- 周三 返回3
int dayOfWeek = LocalDate.of(2023, 2, 1).getDayOfWeek().getValue();
//获取日期是当年的第几天 -- 返回32
int dayOfYear = LocalDate.of(2023, 2, 1).getDayOfYear();
//日期比较
LocalDate date1 = LocalDate.of(2023, 10, 1);
LocalDate date2 = LocalDate.of(2023, 10, 2);
//date1是否在date2日期之前
boolean isBefore = date1.isBefore(date2);
//date1是否在date2日期之后
boolean isAfter = date1.isAfter(date2);
//date1是否与date2日期相等
boolean isEqual = date1.isEqual(date2);
//两个日期相差多长时间
LocalDate betweenDate1 = LocalDate.of(2023, 8, 1);
LocalDate betweenDate2 = LocalDate.of(2023, 10, 2);
Period period = Period.between(betweenDate1, betweenDate2);
//相差年数
int btwYears = period.getYears();
//相差年数
int btwMonths = period.getMonths();
//相差年数
int btwDays = period.getDays();
//是否是闰年
boolean isLeapYear = LocalDate.now().isLeapYear();
LocalDateTime
//获取当前日期时间
LocalDateTime nowTime = LocalDateTime.now();
//获取指定日期时间
LocalDateTime localDateTime = LocalDateTime.of(2024, 1, 1, 10, 8, 10);
//DateTime转LocalDateTime
DateTime dateTime = new DateTime();
Instant instantTime = dateTime.toInstant();
LocalDateTime dateTimeToLocalDateTime = instantTime.atZone(ZoneId.systemDefault()).toLocalDateTime();
//LocalDateTime转DateTime
Date localDateTimeToDate = Date.from(nowTime.atZone(ZoneId.systemDefault()).toInstant());
//String转LocalDateTime
LocalDateTime stringToLocalDateTime = LocalDateTime.parse("2023-05-01 10:08:20", DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
//LocalDateTime转String
String localDateTimeToString = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
LocalTime
//获取当前时间
LocalTime localNowTime = LocalTime.now();
//获取指定时间
LocalTime localTime = LocalTime.of(10, 8, 10);
//String转LocalTime
LocalTime stringToLocalTime1 = LocalTime.parse("10:08:20");
LocalTime stringToLocalTime2 = LocalTime.parse("10-08-20", DateTimeFormatter.ofPattern("HH-mm-ss"));
//LocalTime转String
String localTimeToString = LocalTime.now().format(DateTimeFormatter.ofPattern("HH:mm:ss"));
对应LocalDateTime,LocalTime与LocalDate的用法一致,就不在列举