根据指定日期段找出符合条件的日期,例如指定日期段里是星期一,星期二,星期三的是是哪些天

public static List<String> getMatchDateStrs(String[] weekdays, String start, String end)
 throws Exception
 {  
  List<String> list = new ArrayList<String>();
  String[] weeks = {"星期一","星期二","星期三","星期四","星期五","星期六","星期日"};
  String datestr = null;
  SimpleDateFormat dateformat = new SimpleDateFormat("yyyy-MM-dd");
  SimpleDateFormat weekdayformat = new SimpleDateFormat("E");
  Calendar calendar = Calendar.getInstance();
  calendar.setTime(dateformat.parse(start));
  calendar.setTimeZone(TimeZone.getTimeZone("GMT+08:00"));
  datestr = dateformat.format(calendar.getTime());
    
  while (datestr.compareToIgnoreCase(end)<1)
  {
   for (int i = 0; i < weekdays.length; i++)
   {
    if (!"".equals(weekdays[i]))
    {
     int temp = Integer.parseInt(weekdays[i]);
     if (weeks[temp-1].equals(weekdayformat.format(calendar.getTime())))
     {
      list.add(datestr);
     } 
    }
   }
   calendar.add(Calendar.DAY_OF_MONTH, 1);
   datestr = dateformat.format(calendar.getTime());   
  }
  
  return list;
 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值