LocalDate 获取天
时间: 2023-08-12 10:27:38 浏览: 79
要获取 `LocalDate` 对象所表示的天数,可以使用 `toEpochDay` 方法。该方法返回自 1970 年 1 月 1 日以来的天数。例如,要获取今天是这一年的第几天,可以这样写:
```
LocalDate now = LocalDate.now();
int dayOfYear = (int) (now.toEpochDay() - now.withDayOfYear(1).toEpochDay()) + 1;
```
其中,`toEpochDay` 方法返回的是一个 `long` 类型的值,需要强制转换成 `int` 类型。另外,`withDayOfYear(1)` 方法将当前日期设置为今年的第一天,这样计算出来的天数就是从今年的第一天开始算起的。
相关问题
LocalDate 获取天做比较
要比较两个 `LocalDate` 对象的天数大小,可以使用 `compareTo` 方法。例如,要比较 `date1` 是否在 `date2` 之前,可以这样写:
```
if (date1.compareTo(date2) < 0) {
// date1 在 date2 之前
} else if (date1.compareTo(date2) > 0) {
// date1 在 date2 之后
} else {
// date1 和 date2 是同一天
}
```
其中,`compareTo` 方法返回一个 `int` 值,表示两个日期之间的天数差。如果返回值小于 0,表示当前日期在比较日期之前;如果返回值大于 0,表示当前日期在比较日期之后;如果返回值等于 0,表示两个日期相同。
localdate获取前一天
要获取前一天的日期,可以使用Java 8中的`LocalDate`类。可以通过`LocalDate.now().minusDays(1)`获取当前日期的前一天日期。下面是代码示例:
```java
LocalDate localDate = LocalDate.now().minusDays(1);
System.out.println(localDate.toString());
System.out.println(localDate.getYear());
System.out.println(localDate.getMonthValue());
System.out.println(localDate.getDayOfMonth());
```
这段代码将输出前一天的日期,包括年、月和日。例如,如果今天是2021年3月2日,那么输出将为:
```
2021-03-01
2021
3
1
```
阅读全文