How to Add or Subtract Hours from a Date



This code example shows how to add and remove hours from a date using an instance of the Calendar class.
The method incrementHours takes two parameters, the Calendar object and the number of hours to add.
The method decrementHours takes the same parameters and decrement the Calendar object with the number of hours passed to it.
Note that the actuall call to the calendar is to the same method, add(), but when decrementing a negative value is passed.
Also note that in the example we use the constant HOURS of the Calendar class. That constant is used when dealing with a 12 hour clock.
If we utilize the 24 hour clock we should instead use the constant HOUR_OF_DAY.

The main method creates a Calendar object and print out the current date / time.
Then it instantiates a new Main object and call both methods with the calendar instance as parameter along with the number of hours.


import java.util.Calendar;


/**
 *
 * @author www.javadb.com
 */

public class Main {

    public void incrementHours(Calendar cal, int hours) {

        cal.add(Calendar.HOUR, hours);
        System.out.println("Date after increment: " + cal.getTime());
    }

    public void decrementHours(Calendar cal, int hours) {

        cal.add(Calendar.HOUR, hours);
        System.out.println("Date after decrement: " + cal.getTime());

    }
    /**
     * @param args the command line arguments
     */

    public static void main(String[] args) {

        Calendar cal = Calendar.getInstance();
        System.out.println("Now : " + cal.getTime());
        Main main = new Main();
        main.incrementHours(cal, 5);
        main.decrementHours(cal, -10);
    }
}

Do you know your Java?
Take a Ten-Question-Java-Quiz!

Bookmark and Share




Need help with your Java code? It's secure and confidential.
This is how it works:
Send a detailed description of what you need help with, the more details the better. Also provide a deadline for when it has to be finished. More time means better chance of putting your request into the schedule.

If the request is serious you will shortly receive an email with the price, to which you have to respond if you accept.

Once you have accepted, the work will begin on developing your code by an experienced Java developer. When the code is finished a link to a secure payment will be sent to you.

The source code is then sent to you once the payment is completed.

IMPORTANT! The request needs to be very detailed, else it may be ignored.


Write your detailed request here:

E-mail address: