java中获取上个月最后的时间
时间: 2023-08-26 18:06:52 浏览: 83
以下是一种获取上个月最后一天的方法:
```
Calendar cal = Calendar.getInstance();
cal.add(Calendar.MONTH, -1);
cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(Calendar.DAY_OF_MONTH));
cal.set(Calendar.HOUR_OF_DAY, 23);
cal.set(Calendar.MINUTE, 59);
cal.set(Calendar.SECOND, 59);
cal.set(Calendar.MILLISECOND, 999);
Date lastDayOfLastMonth = cal.getTime();
```
首先获取当前时间的 Calendar 对象,然后将其月份减一,表示上个月。接着,将日期设为上个月最后一天,使用 `getActualMaximum(Calendar.DAY_OF_MONTH)` 方法可以获取当前月份的最大天数,即上个月最后一天的日期。最后,将时分秒毫秒设为最后一秒,得到上个月最后的时间。
相关问题
java 获取上个月时间_java8怎么通过LocalDate获取上个月的时间
可以使用Java 8中的`LocalDate`类和其方法来获取上个月的时间。具体实现如下:
```java
// 获取当前日期
LocalDate currentDate = LocalDate.now();
// 获取上个月的日期(使用withDayOfMonth()方法将日期设置为1,然后减去一个月)
LocalDate lastMonthDate = currentDate.withDayOfMonth(1).minusMonths(1);
// 获取上个月的年份和月份
int lastMonthYear = lastMonthDate.getYear();
int lastMonthMonth = lastMonthDate.getMonthValue();
```
这段代码首先获取当前日期,然后通过`withDayOfMonth()`方法将日期设置为1,再减去一个月,就可以得到上个月的日期。最后,通过`getYear()`和`getMonthValue()`方法获取上个月的年份和月份。
注意:这里的获取上个月的日期是针对当前日期而言的,如果需要获取任意一个月的上个月,只需将`currentDate`替换为相应的日期即可。
java获取上个月的日期
可以通过Java中的Calendar类来获取上个月的日期。具体实现可以参考以下代码:
```java
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.MONTH, -1);
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH) + 1; // 月份从0开始,需要加1
int day = calendar.get(Calendar.DAY_OF_MONTH);
String lastMonthDate = year + "-" + month + "-" + day;
```
上述代码中,我们先获取当前时间的Calendar实例,然后通过调用add方法来减去一个月,最后获取上个月的年、月、日,并将它们拼接成一个字符串。
阅读全文