Calendar calendar = Calendar.getInstance();
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
long day= getDistanceTime("2017-8-20","2017-9-21");
String currentDay="2017-8-20";
for(int i=0;i<=day;i++){
calendar.setTime(df.parse(currentDay));
int w= calendar.get(Calendar.DAY_OF_WEEK);
if(w==1){//判断周末
System.out.println(currentDay);
};
calendar.setTime(df.parse(currentDay));
calendar.add(Calendar.DATE,1);
currentDay=df.format(calendar.getTime());
/**
* 两个时间相差距离多少天
* @param str1 时间参数 1 格式:1990-01-01
* @param str2 时间参数 2 格式:2009-01-01
* @return long 返回值为:xx天
*/
public static long getDistanceTime(String str1, String str2) {
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date one;
Date two;
long day = 0;
try {
one = df.parse(str1);
two = df.parse(str2);
long time1 = one.getTime();
long time2 = two.getTime();
long diff ;
if(time1<time2) {
diff = time2 - time1;
} else {
diff = time1 - time2;
}
day = diff / (24 * 60 * 60 * 1000);
} catch (ParseException e) {
e.printStackTrace();
}
return day;
}