1、获取年份列表示例如下
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class Main {
public static void main(String[] args) {
String date1 = "2017-01-01";
String date2 = "2021-12-01";
DateFormat formater = new SimpleDateFormat("yyyy");
Calendar beginCalendar = Calendar.getInstance();
Calendar finishCalendar = Calendar.getInstance();
try {
beginCalendar.setTime(formater.parse(date1));
finishCalendar.setTime(formater.parse(date2));
} catch (ParseException e) {
e.printStackTrace();
}
while (beginCalendar.before(finishCalendar) || beginCalendar.equals(finishCalendar)) {
String date = formater.format(beginCalendar.getTime()).toUpperCase();
System.out.println(date);
beginCalendar.add(Calendar.YEAR, 1);
}
}
}
View Code
2、获取月份列表示例如下
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class MainYearMonth {
public static void main(String[] args) {
String date1 = "2017-01-01";
String date2 = "2021-12-01";
//注意:这里的MM一定是大写,小写计算出的月份列表是错误的
DateFormat formater = new SimpleDateFormat("yyyy-MM");
Calendar beginCalendar = Calendar.getInstance();
Calendar finishCalendar = Calendar.getInstance();
try {
beginCalendar.setTime(formater.parse(date1));
finishCalendar.setTime(formater.parse(date2));
} catch (ParseException e) {
e.printStackTrace();
}
while (beginCalendar.before(finishCalendar) || beginCalendar.equals(finishCalendar)) {
String date = formater.format(beginCalendar.getTime()).toUpperCase();
System.out.println(date);
beginCalendar.add(Calendar.MONTH, 1);
}
}
}
View Code