很实用的小工具,查出任意时间段的日期,用来填充业务数据。
public class TimeUtil {
/**
* 获取过去或者未来 任意天内的日期数组
* @param intervals intervals天内
* @return 日期数组
*/
public static ArrayList<String> pastDaysList(int intervals) {
ArrayList<String> pastDaysList = new ArrayList<>();
ArrayList<String> fetureDaysList = new ArrayList<>();
for (int i = 0; i <= intervals; i++) {
pastDaysList.add(getPastDate(i));
fetureDaysList.add(getFetureDate(i));
}
Collections.reverse(pastDaysList);
System.out.println(pastDaysList);
return pastDaysList;
}
/**
* 获取过去时间段的日期
*
* @param past
* @return
*/
public static String getPastDate(int past) {
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) - past);
Date today = calendar.getTime();
SimpleDateFormat format = new SimpleDateFormat("MM-dd");
String result = format.format(today);
return result;
}
/**
* 获取未来 第 时间段的日期
* @param past
* @return
*/
public static String getFetureDate(int past) {
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) + past);
Date today = calendar.getTime();
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
String result = format.format(today);
return result;
}
}