具体代码如下:
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
/**
* @author: yc
* @description:
* @create: 2022-08-11 13:22
*/
public class TimeIntervalUtil {
/**
* @description:获取当期时间前后第几天的日期数组
* @author: yc
* @date: 2022-08-11 13:33:04
* @param args
* @return void
*/
public static void main(String[] args) {
int timeInterval=7;
List<String> frontDaysList = new ArrayList<String>();
List<String> afterDaysList = new ArrayList<String>();
for (int i = 0; i <timeInterval; i++) {
afterDaysList.add(getDays(i,0));
frontDaysList.add(getDays(i,1));
}
System.out.println("之前日期: "+frontDaysList) ;
System.out.println("之后日期: "+afterDaysList) ;
}
/**
* @description:获取对应的时间天
* @author: yc
* @date: 2022-08-11 13:30:49
* @param time 第几天
* @param b b=0 之后日期 ,b=1 之前日期
* @return java.lang.String
*/
private static String getDays(int time, int b) {
Calendar calendar = Calendar.getInstance();
if (b==0) {
calendar.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) + time);
}else if(b==1) {
calendar.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) - time);
}
Date today = calendar.getTime();
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
return format.format(today);
}
}
返回实例:
之前日期: [2022-08-11, 2022-08-12, 2022-08-13, 2022-08-14, 2022-08-15, 2022-08-16, 2022-08-17]
之后日期: [2022-08-11, 2022-08-10, 2022-08-09, 2022-08-08, 2022-08-07, 2022-08-06, 2022-08-05]