java根据某个日期获取前十二个月日期
时间: 2023-10-18 22:24:40 浏览: 98
可以使用Java中的Calendar类来实现此功能。具体的方法是:
1. 创建一个Calendar对象,设置其时间为要查询的日期。
2. 使用Calendar的add方法,按月份递减,获取前12个月的日期。
3. 将每个月的日期转换为字符串,并添加到一个List中。
代码示例:
```java
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
public class DateUtil {
public static List<String> getLast12Months(String dateStr) throws Exception {
List<String> last12Months = new ArrayList<>();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar = Calendar.getInstance();
calendar.setTime(sdf.parse(dateStr));
for (int i = 0; i < 12; i++) {
calendar.add(Calendar.MONTH, -1);
String monthStr = sdf.format(calendar.getTime());
last12Months.add(monthStr);
}
return last12Months;
}
}
```
其中,dateStr是要查询的日期,格式为"yyyy-MM-dd",返回值是一个List,包含了前12个月的日期,格式同样为"yyyy-MM-dd"。