Java给指定时间加上任意的时间

本文提供了一种在Java中操作日期时间的方法,包括如何给指定的日期时间增加特定的天数、小时数、分钟数和秒数,并返回新的时间表示。通过两个不同的方法分别实现了返回字符串格式和Date对象格式的时间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

可能会用到,但用的不多,所以记录起来,以后要用直接拿。 

public class Test {
    public static void main(String[] args) {
        // 当前时间
        Date date = new Date(System.currentTimeMillis());
        System.out.println("当前时间 = " + date);

        // 想加2小时5分10秒,且返回字符串
        String strDate = addDateTimeToStr(date, 0, 2, 5, 10);
        System.out.println("转换后的时间 = " + strDate);

        System.out.println("-------------");
        System.out.println("当前时间=" + date);
        // 想加3小时2分5秒,且返回Date
        Date goalDate = addDateTimeToDate(date, 0, 3, 2, 5);
        System.out.println("转换后的时间 = " + goalDate);
    }

    /**
     * 返回字符串
     *
     * 给原本的时间originDate加上自定义的时间
     * @param originDate 原本的时间
     * @param day 要加的天数
     * @param hour 要加的小时数
     * @param minute 要加的分钟数
     * @param second 要加的秒数
     * @return 返回加完时间后的时间str_goalDate
     */
    public static String addDateTimeToStr(Date originDate, int day, int hour, int minute,int second) {
        SimpleDateFormat dateFormate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Calendar cal = Calendar.getInstance();
        cal.setTime(originDate);
        cal.add(Calendar.DATE, day);// 24小时制,加天
        cal.add(Calendar.HOUR, hour);// 24小时制 ,加小时
        cal.add(Calendar.MINUTE, minute);// 24小时制,加分钟
        cal.add(Calendar.SECOND, second);// 24小时制,加秒

        String str_goalDate = dateFormate.format(cal.getTime());
        return str_goalDate;
    }

    /**
     * 返回java.util.Date
     *
     * 给原本的时间originDate加上自定义的时间
     * @param originDate 原本的时间
     * @param day 要加的天数
     * @param hour 要加的小时数
     * @param minute 要加的分钟数
     * @param second 要加的秒数
     * @return 返回加完时间后的时间goalDate
     */
    public static Date addDateTimeToDate(Date originDate, int day, int hour, int minute,int second) {
        Calendar cal = Calendar.getInstance();
        cal.setTime(originDate);
        cal.add(Calendar.DATE, day);// 24小时制,加天
        cal.add(Calendar.HOUR, hour);// 24小时制 ,加小时
        cal.add(Calendar.MINUTE, minute);// 24小时制,加分钟
        cal.add(Calendar.SECOND, second);// 24小时制,加秒

        Date goalDate = cal.getTime();
        return goalDate;
    }
}

测试结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

躺着听Jay

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值