LocalDateTime
类中的一些常用方法,这些方法用于处理日期和时间信息:
-
获取当前时间:
LocalDateTime.now()
返回当前系统时间对应的
LocalDateTime
对象,包括日期和时间部分。 -
构造实例:
LocalDateTime.of(int year, int month, int dayOfMonth, int hour, int minute, int second, int nanoOfSecond) LocalDateTime.of(LocalDate date, LocalTime time)
分别用于根据指定的年、月、日、时、分、秒、纳秒创建
LocalDateTime
对象,或者将LocalDate
和LocalTime
对象组合成一个LocalDateTime
对象。 -
获取日期或时间部分:
LocalDate date = localDateTime.toLocalDate(); LocalTime time = localDateTime.toLocalTime();
提供访问
LocalDateTime
对象中的日期部分(LocalDate
)和时间部分(LocalTime
)。 -
获取年、月、日、时、分、秒、纳秒:
int year = localDateTime.getYear(); int monthValue = localDateTime.getMonthValue(); int dayOfMonth = localDateTime.getDayOfMonth();
int hour = localDateTime.getHour(); int minute = localDateTime.getMinute(); int second = localDateTime.getSecond(); int nano = localDateTime.getNano();这些方法分别用于获取
LocalDateTime
对象中特定的时间单位值。 -
时间运算:加减日期/时间单位:
LocalDateTime later = localDateTime.plusYears(years); LocalDateTime later = localDateTime.plusMonths(months); LocalDateTime later = localDateTime.plusDays(days); LocalDateTime later = localDateTime.plusHours(hours); LocalDateTime later = localDateTime.plusMinutes(minutes); LocalDateTime later = localDateTime.plusSeconds(seconds); LocalDateTime later = localDateTime.plusNanos(nanos); LocalDateTime earlier = localDateTime.minusYears(years); // ... similarly for other units: months, days, hours, minutes, seconds, nanos
这些
plusXxx()
和minusXxx()
方法允许向LocalDateTime
对象添加或减去指定数量的年、月、日、小时、分钟、秒或纳秒,返回一个新的LocalDateTime
对象表示运算后的结果。 -
比较日期时间:
Javaboolean isBefore = localDateTime.isBefore(otherLocalDateTime); boolean isAfter = localDateTime.isAfter(otherLocalDateTime);
boolean isEqual = localDateTime.isEqual(otherLocalDateTime);用于比较两个
LocalDateTime
对象之间的先后关系。 -
时间区间检查:
boolean isWithinInterval = localDateTime.isAfter(startInclusive) && localDateTime.isBefore(endExclusive);
-
检查给定的
LocalDateTime
是否位于某个时间区间内(包括区间开始但不包括区间结束)。 -
与字符串相互转换:
String formatted = localDateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); LocalDateTime parsed = LocalDateTime.parse(str, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
使用
DateTimeFormatter
类来将LocalDateTime
对象格式化为字符串,或者将符合特定格式的字符串解析为LocalDateTime
对象。 -
调整日期或时间:
JavaLocalDateTime withDayOfMonth(int dayOfMonth); LocalDateTime withMonth(int month); // ...其他类似方法如withYear(), withHour(), withMinute(), withSecond(), withNano()
用于创建一个新的
LocalDateTime
对象,其指定的日期或时间单位已更改为提供的值,其余部分保持不变。