java 根据开始日期 ,需要的工作日天数 ,计算工作截止日期,并返回截止日期

转载 2015年07月07日 09:51:07
/**
 * 根据开始日期 ,需要的工作日天数 ,计算工作截止日期,并返回截止日期
 * @param startDate 开始日期
 * @param workDay 工作日天数(周一到周五)
 * @return Date类型
 * @createTime 2014-2-14
 * @author Sunqinbo
 */
public static Date getWorkDay(Date startDate, int workDay) {
    Calendar c1 = Calendar.getInstance();
    c1.setTime(startDate);
    for (int i = 0; i < workDay; i++) {
        c1.set(Calendar.DATE, c1.get(Calendar.DATE) + 1);
        if (Calendar.SATURDAY == c1.get(Calendar.SATURDAY) || Calendar.SUNDAY == c1.get(Calendar.SUNDAY)) {
            workDay = workDay + 1;
            c1.set(Calendar.DATE, c1.get(Calendar.DATE) + 1);
            continue;
        }
    }
    SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    System.out.println(df.format(c1.getTime()) + " " + getWeekOfDate(c1.getTime()));
    return c1.getTime();
}
 
/**
 * 根据日期,获取星期几
 * @param dt
 * @return String类型
 * @createTime 2014-2-14
 * @author Sunqinbo
 */
public static String getWeekOfDate(Date dt) {
    String[] weekDays = { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
    Calendar cal = Calendar.getInstance();
    cal.setTime(dt);
    int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
    if (w < 0) w = 0;
    return weekDays[w];
}
 
public static void main(String[] args) {
    for (int i = 0; i < 10; i++) {
        System.out.print("工作日:" + i + " ");
        getWorkDay(new Date(), i);
    }
}


java 根据开始日期 ,需要的工作日天数 ,计算工作截止日期,并返回截止日期

根据开始日期 ,需要的工作日天数 ,计算工作截止日期,并返回截止日期
  • sqbzo
  • sqbzo
  • 2014年02月14日 10:33
  • 4459

java 日期天数计算的一些常用方法

/***      * 获取【查询时间】到现在多少天      *      * @param fromDate 查询时间      * @return      * @throws Ex...
  • xieyuntestShow
  • xieyuntestShow
  • 2012年03月05日 16:19
  • 3649

输入开始时间和工作天数,计算结束时间,需考虑节假日周末和调休

function endTime(day){          //开始时间          var beginTime = document.getElementById("beginTime")...
  • qq_31082427
  • qq_31082427
  • 2017年06月05日 08:38
  • 294

给定开始和结束日期,返回之间所有日期的列表

给定两个日期(string),遍历之间的所有日期给定String或者Date类型的开始和结束日期,返回之间的日期列表public class CalendarUtil { private st...
  • ming2316780
  • ming2316780
  • 2017年04月12日 13:49
  • 598

Java获取两个日期之间的工作日天数

参数:开始日期,结束日期 String 返回值:天数 int @SuppressWarnings("deprecation") public int getDutyDays(String st...
  • softwave
  • softwave
  • 2011年11月19日 21:38
  • 7167

JS计算日期加天数后的日期(起始日期+有效天数=截至日期)

/** * 优惠券有效期 * startDate:起始日期 * valueTime:有效天数 */ function transferCouponValueTime(startDat...
  • archer119
  • archer119
  • 2016年07月04日 17:05
  • 3296

java计算两个日期之前的天数(工作日),排除节假日和周末

如题所说,计算两个日期之前的天数,排除节假日和周末。这里天数的类型为double,因为该功能实现的是请假天数的计算,有请一上午假的为0.5天。 不够很坑的是每个日期都要查询数据库,感觉很浪费时间...
  • hj7jay
  • hj7jay
  • 2017年07月13日 09:28
  • 838

java 获取某周的起始和结束日期

public static final Date convertStringToDate(String strDate)    throws ParseException {   SimpleDa...
  • amohan
  • amohan
  • 2014年01月11日 10:02
  • 1491

JAVA后台计算两个日期之间的工作日时间差

【代码实现】:两个日期之间的工作日时间差(精确到毫秒) 【代码特点】: 1.支持跨年。 2.获取的是精确到毫秒的时间差。 3.国家法定假日未计算在内(像阴历这种的只有通过加入L...
  • wangdachi
  • wangdachi
  • 2014年04月15日 17:29
  • 3802

计算任意2个日期之间的工作天数

         对于任意2个日期比如:date_start=2006-10-1、date_end=2006-10-14 ,首先计算这连个日期之间的时间间隔(天数),然后分别对date_start 和...
  • guiling002
  • guiling002
  • 2007年09月05日 08:42
  • 893
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java 根据开始日期 ,需要的工作日天数 ,计算工作截止日期,并返回截止日期
举报原因:
原因补充:

(最多只允许输入30个字)