/**
* 给定两个日期 分别得到两个日期之间的周一到周五 和周末
* @param date1
* @param date2
* @return
* @throws Exception
*/
public static Map<String,List<String>> getweekDays(String date1, String date2)throws Exception{
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
//首先得到两个日期之间的所有日期信息
List<String> allDays = new ArrayList<>();
int dayTime = 24*60*60*1000;
long d1 = format.parse(date1).getTime();
long d2 = format.parse(date2).getTime();
while(d2>=d1){
String time = format.format(d1);
allDays.add(time);
d1+=dayTime;
}
//将得到的所有日期遍历,将每个日期的星期信息取出
Calendar calendar = Calendar.getInstance();
Map<String,List<String>> stringListMap = new HashMap<>();
List<String> workdays = new ArrayList<>();
List<String> weekenddays = new ArrayList<>();
for(String str : allDays){
calendar.setTime(format.parse(str));
int week = calendar.get(Calendar.DAY_OF_WEEK);
if(week!=1 && week!=7){
workdays.add(str);//工作日
}
if(week==1||week==7){
weekenddays.add(str);//周末
}
}
stringListMap.put("workdays",workdays);
stringListMap.put("weekenddays",weekenddays);
return stringListMap;
}
给定两个日期分别得到两个日期之间的周一到周五和周末
最新推荐文章于 2023-04-21 11:12:56 发布