计算除周末外的两个日期的日期 [英] Calculating dates given two dates excluding weekend

查看:191
本文介绍了计算除周末外的两个日期的日期的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在Spring 3.0项目中使用Joda时间api来计算日期。现在我有一个开始和结束的日期,我想要在这两个日期之间每天的周末或周六或周日。我该如何实现?

I am using Joda time api in a Spring 3.0 project for to calculate dates. Now I have a start and end date and I want to get everyday exept weekend or Saturday or Sunday between these two dates. How can I achieve this ?

我看了这篇文章 Joda时间 - 两个日期之间的所有星期一
它提供了一些指导,但仍然模糊如何排除两个日期。

I looked at this post Joda time - all mondays between two dates. It offered some guidance but still vague as how to exclude two dates.

推荐答案

我假设你的问题是如何


除了周末或周二或周日两个日期之外,每天都会收到。

get every day except weekend or Saturday or Sunday between two dates.

解决方案

Solution :

public static void main(String[] args) {
    final LocalDate start = LocalDate.now();
    final LocalDate end = new LocalDate(2012, 1, 14);

    LocalDate weekday = start;

    if (start.getDayOfWeek() == DateTimeConstants.SATURDAY ||
            start.getDayOfWeek() == DateTimeConstants.SUNDAY) {
        weekday = weekday.plusWeeks(1).withDayOfWeek(DateTimeConstants.MONDAY);
    }

    while (weekday.isBefore(end)) {
        System.out.println(weekday);

        if (weekday.getDayOfWeek() == DateTimeConstants.FRIDAY)
            weekday = weekday.plusDays(3);
        else
            weekday = weekday.plusDays(1);
    }
}

这篇关于计算除周末外的两个日期的日期的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆