81,095
社区成员
发帖
与我相关
我的任务
分享
public class Test1 {
public static void main(String[] args) throws ParseException {
List<String[]> type = getType(df.parse("2015-01-01"), df.parse("2017-06-15"));
for (int i = 0; i < type.size(); i++) {
if(i != 0 && i != type.size()){
System.out.print(",");
}
System.out.print(Arrays.toString(type.get(i)));
}
}
static SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
static List<String[]> getType(Date sd , Date ed){
long days = (ed.getTime() - sd.getTime()) / 3600 / 24 / 1000;
Calendar instance = Calendar.getInstance();
instance.setTime(sd);
int i = instance.get(Calendar.DAY_OF_WEEK);
int fsi = 7 - i + 1;
long iiv = days - fsi;
//天数
long d = iiv / 7;
instance.add(Calendar.DAY_OF_YEAR, fsi);
List<String[]> list = new ArrayList<>();
list.add(new String[]{df.format(sd), df.format(instance.getTime())});
String[] ne ;
for (long k = 0; k < d; k++) {
instance.add(Calendar.DAY_OF_YEAR, 1);
Date start = instance.getTime();
instance.add(Calendar.DAY_OF_YEAR, 6);
Date end = instance.getTime();
ne = new String[]{df.format(start), df.format(end)};
list.add(ne);
}
instance.add(Calendar.DAY_OF_YEAR, 1);
list.add(new String[]{df.format(instance.getTime()), df.format(ed)});
return list;
}