`
kanpiaoxue
  • 浏览: 1781368 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

DateTime计算未来时间

 
阅读更多

写着玩的一小段代码:

import org.apache.commons.collections.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.joda.time.DateTime;
import org.joda.time.format.DateTimeFormat;
import org.joda.time.format.DateTimeFormatter;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.google.common.base.Preconditions;
import com.google.common.collect.Maps;

import java.util.Map;

public class App {


    public static void main(String[] args) {


        Map<String,Integer> map = Maps.newLinkedHashMap();
        map.put("入职一个月",30);
        map.put("入职半年",180);
        map.put("入职一年",365);
        
        calcute("2019-01-09", map);
        // output 
        // 入职一个月:  2019-02-08(星期五)
        // 入职半年:   2019-07-08(星期一)
        // 入职一年:   2020-01-09(星期四)
    }
    
    public static void calcute(String baseDate,Map<String,Integer> durationMap) {
        Preconditions.checkArgument(StringUtils.isNotBlank(baseDate));
        Preconditions.checkArgument(MapUtils.isNotEmpty(durationMap));
        DateTimeFormatter formatter = DateTimeFormat.forPattern("yyyy-MM-dd");
        DateTime dateTime = DateTime.parse(baseDate, formatter);
        durationMap.entrySet().stream().forEach(entry -> {
            int days = entry.getValue();      
            DateTime tmp =    dateTime.dayOfYear().addToCopy(days);
            String week = tmp.dayOfWeek().getAsShortText();          
            System.out.println(String.format("%s:\t%s(%s)", entry.getKey(),
                    tmp.toString(formatter),week));
        });
    }
    
}

 

分享到:
评论

相关推荐

    未来时间点的计算

    在给定的标题“未来时间点的计算”中,我们讨论的核心是如何从当前时间出发,推算出任意未来天数的日期。描述中提到的例子是:在2017年11月22日00:00:00这个时刻,如果我们需要计算7天之后的日期,结果应为2017年11...

    sql sever时间(datetime)函数

    根据提供的文件信息,本文将详细解释SQL Server中的时间(datetime)函数及其使用方法,重点在于如何格式化时间显示。 ### 1. GetDate() `GetDate()` 函数用于获取当前系统日期和时间。这是一个非常常用的功能,在很...

    python利用datetime模块计算时间差

    - 计算未来某个时间点: ```python current_time = datetime.datetime.now() future_time = current_time + datetime.timedelta(hours=10) ``` 总的来说,`datetime`模块提供了丰富的功能来处理日期和时间。...

    datetime_日历_时间_

    首先,`datetime.js`文件很可能包含了一个JavaScript库,用于处理日期和时间的显示、计算以及用户交互。JavaScript是Web开发中用于前端交互的主要语言,它提供了内置的Date对象,可以创建、操作和格式化日期。开发者...

    DateTime格式化

    对于过去一周和未来一周的日期计算,只需在上述基础上增加或减少7天即可。 #### 六、每月第一天和最后一天 要获取每个月的第一天和最后一天,可以通过简单的数学运算实现: - **每月第一天**:直接使用当前年份和...

    python中datetime的用法.docx

    可以使用timedelta来增加或减少日期和时间,例如计算两个日期间的差值或获取未来某一时刻: ```python d1 = datetime.datetime(2021, 10, 1) d2 = datetime.datetime(2021, 10, 10) delta = d2 - d1 print...

    计算天数和查询未来天数的软件

    此外,还可以使用各种编程语言中的日期和时间库,如Python的datetime模块,JavaScript的Date对象,Java的java.time包等,来实现日期的运算。 "计算历史天数"功能涉及到日期的减法操作。例如,用户输入自己的出生...

    倒数日计算 计算今天到未来某一天共有多少天

    本项目是一个由C#编程语言实现的倒数日计算工具,它能够帮助用户计算从当前日期到未来特定日期的天数,同时也能反向计算过去某一天到现在的天数。 C#是微软开发的一种面向对象的编程语言,广泛应用于Windows桌面...

    详解在c#语言中DateTime类的使用及其常用技巧.txt

    - 可以通过`AddDays`方法计算过去或未来7天的日期。 - 示例代码: ```csharp string date7DaysLater = currentDate.AddDays(7).ToShortDateString(); // 7天后 string date7DaysAgo = currentDate.AddDays(-7)....

    VB.NET各种时间函数源码

    通过理解并应用这些VB.NET时间函数,开发者可以轻松地处理日期和时间相关的任务,无论是获取系统时间、计算时间差,还是格式化输出日期和时间。以上代码示例可以作为参考,根据实际需求进行修改和扩展。

    python3中datetime库,time库以及pandas中的时间函数区别与详解

    Unix Timestamp是一种自1970年1月1日以来的秒数表示方式,它可以用于计算过去或未来的时间点。 `time`模块主要包括一个结构体`struct_time`以及其他几个函数及相关常量。需要注意的是,在该模块中的大多数函数都是...

    元旦倒计时,对于其他长期的倒计时,可以用timedelta对象来测量直到未来某个时间点(生日? 周年纪念?)的天、时、分和秒数

    我们可以使用 datetime 模块的 datetime 对象来获取当前时间,然后使用 timedelta 对象来计算时间差。 三、程序设计 在元旦倒计时程序中,我们可以使用以下步骤来设计程序: 1. 导入相关模块,包括 time 模块和 ...

    时间加上天数得到时间

    这个过程通常会在需要计算未来的某个日期,或者处理时间序列数据时出现。在IT领域,这种操作是常见的日期和时间处理的一部分。 在Java中,我们可以使用`java.util.Calendar`类或`java.time`包中的`LocalDate`、`...

    infomix 时间小议

    在 INFORMIX 数据库系统中,时间相关的数据类型包括 DATE, DATETIME 和 INTERVAL,它们各自有不同的特性和用途。 首先,DATE 类型用于存储日历日期,占用 4 个字节,表示从 1899 年 12 月 31 日起的天数。日期间的...

    C#计算任意时间星期几

    在编程领域,尤其是在开发日历或时间相关的应用时,经常需要计算给定日期是星期几。...理解并熟练运用C#的日期和时间处理能力,对于开发者来说是非常重要的技能,特别是在处理历史数据或未来计划时。

    年龄计算器 精确计算出您的时间段

    这涉及到编程语言中的日期时间库,如Python的datetime模块,JavaScript的Date对象等。 2. **时间间隔计算**:在计算年龄时,需要考虑到闰年的影响,因为闰年有366天而非常见的365天。计算时需确保在2月29日出生的人...

    详解C# TimeSpan 计算时间差(时间间隔)

    在实际编程中,`TimeSpan`经常与`DateTime`一起使用,例如,通过`DateTime.Now`获取当前时间,然后用`TimeSpan`计算两个`DateTime`对象之间的时间差。 以下是一些使用`TimeSpan`的代码示例: ```csharp TimeSpan ...

    Python中时间datetime的处理与转换用法总结

    通过上述介绍可以看出,Python中的`datetime`模块功能非常强大,不仅支持日期和时间的基本操作,还提供了许多高级功能,如时间间隔计算、日期比较等。熟练掌握这些功能对于提高日常编程效率是非常有帮助的。希望本文...

    学习c#的时间的多种比较方式

    这里创建了一个 `TimeSpan` 对象,表示一个时间跨度为 40 天的时间段,然后用 `DateTime.Now.Subtract(ts)` 方法计算出 40 天前的时间点,并将结果存储在 `dt2` 变量中。最后输出当前时间和计算出的时间点。 通过...

Global site tag (gtag.js) - Google Analytics