java localdate 获取年 月 周
时间: 2023-02-08 08:22:02 浏览: 138
可以使用 LocalDate 类中的以下方法获取年、月、周:
- getYear():获取年份
- getMonth():获取月份(返回 Month 枚举类型)
- getMonthValue():获取月份的值(1-12)
- getDayOfWeek():获取星期几(返回 DayOfWeek 枚举类型)
- getDayOfWeek().getValue() 获取 星期几的值(1-7)
- getDayOfYear() 获取 当年的第几天
例如:
```
LocalDate date = LocalDate.now();
int year = date.getYear();
Month month = date.getMonth();
int monthValue = date.getMonthValue();
DayOfWeek dayOfWeek = date.getDayOfWeek();
int dayOfWeekValue = date.getDayOfWeek().getValue();
int dayOfYear = date.getDayOfYear();
```
相关问题
java localdate 获取当前日期所在周
在Java中,你可以使用`LocalDate`类配合`DayOfWeek`和`WeekFields`类来获取当前日期所在的周。以下是步骤:
1. 首先,你需要导入必要的包:
```java
import java.time.LocalDate;
import java.time.DayOfWeek;
import java.time.WeekFields;
```
2. 然后,创建一个`LocalDate`实例表示当前日期:
```java
LocalDate currentDate = LocalDate.now();
```
3. 使用`DayOfWeek`枚举找到一周的第一天(默认为星期日),并计算从该日起到当前日期的天数。接着,加上这个偏移量,就可以得到当前日期所在的周:
```java
DayOfWeek firstDayOfWeek = WeekFields.of(Locale.getDefault()).getFirstDayOfWeek(); // 设置本地的首日周几
int dayOfWeekIndex = currentDate.getDayOfWeek().getValue() - firstDayOfWeek.getValue(); // 0-based index of the week
// 如果dayOfWeekIndex小于0,说明在上一周;如果大于等于7,说明在下一周
LocalDate startDateOfCurrentWeek = currentDate.minusDays(dayOfWeekIndex);
```
现在`startDateOfCurrentWeek`就是当前日期所在的周的开始日期。
Java LocalDate分别获取上一周末日期
获取上一周末日期可以通过Java 8中的LocalDate类来实现。以下是获取上一周末日期的代码:
```java
// 获取当前日期
LocalDate today = LocalDate.now();
// 获取上一周的星期日
LocalDate lastSunday = today.minusDays(today.getDayOfWeek().getValue());
// 获取上一周的星期六
LocalDate lastSaturday = lastSunday.minusDays(1);
// 输出上一周末日期
System.out.println("上一周末日期:");
System.out.println("星期六:" + lastSaturday);
System.out.println("星期日:" + lastSunday);
```
上述代码中,我们首先获取当前日期,然后通过`minusDays()`方法获取上一周的星期日和星期六。最后输出上一周末日期即可。
阅读全文