您的当前位置:首页正文

JAVA实现Date日期加一天具体方法

2024-11-03 来源:个人技术集锦

1. 业务背景

在业务研发过程中碰到条件范围查询或是设定截止日期,需要基于当前时间向前或是向后进行加减几天,但是因为可能涉及跨月或是跨小时并不能单纯的直接在月份上+1或是-1操作,针对这种情况JAVA提供了相关的API可以完成相关的功能,具体方法如下

2. 操作方法

        // 获取当前时间
        Date date = new Date();
        Calendar calendar = new GregorianCalendar();
        calendar.setTime(date);
        // 把日期往后增加一天,整数  往后推,负数往前移动
        calendar.add(Calendar.DATE, 1);
        // 这个时间就是日期往后推一天的结果
        date = calendar.getTime();

3. 功能测试

附:Java Date类型数据 时间加一天,加一小时,加一分,加一秒

首先获取当前的时间

        Date date = new Date();
        System.out.println(date);

输出:

Sun Jun 19 18:25:20 CST 2022

将date转换为Long类型即用到了函数date.getTime

        long time = date.getTime();
        System.out.println(time);

1655634320515

这个得到的time是自从公元纪年之后的时间差,得到的是毫秒ms级别的

所以你想要加一秒就date.getTime() + 1000;

相加一分钟就date.getTime() + 1000*60;

相加一小时就date.getTime() + 1000*60*60;

想加一天   就date.getTime() + 1000*60*60*24;

以此类推即可

之后我们再new一个date设置我们想要的时间就完事辣

    @Test
    public void testtime(){
        Date date = new Date();
        System.out.println("写代码的当前时间是"+date);
        long time = date.getTime();
//        System.out.println(time);
        Date newDate = new Date();
        newDate.setTime(time + 1000);
        System.out.println("加一秒"+ newDate);
        newDate.setTime(time + 1000*60);
        System.out.println("加一分"+ newDate);
        newDate.setTime(time + 1000*60*60);
        System.out.println("加一时"+ newDate);
        newDate.setTime(time + 1000*60*60*24);
        System.out.println("加一天"+ newDate);
    }

输出:

写代码的当前时间是Sun Jun 19 19:00:08 CST 2022
加一秒Sun Jun 19 19:00:09 CST 2022
加一分Sun Jun 19 19:01:08 CST 2022
加一时Sun Jun 19 20:00:08 CST 2022
加一天Mon Jun 20 19:00:08 CST 2022

总结 

您可能感兴趣的文章:
Top