Exercise:
Write a Java Program to add two dates.
Click Here to View the Solution!
import java.util.Calendar;
public
class AddDates {
public static void main(String[] args) {
Calendar d1 = Calendar.getInstance();
Calendar d2 = Calendar.getInstance();
Calendar cTotal = (Calendar) d1.clone();
cTotal.add(Calendar.YEAR, d2.get(Calendar.YEAR));
cTotal.add(Calendar.MONTH, d2.get(Calendar.MONTH) +
1);
// Zero-based months
cTotal.add(Calendar.DATE, d2.get(Calendar.DATE));
cTotal.add(Calendar.HOUR_OF_DAY, d2.get(Calendar.HOUR_OF_DAY));
cTotal.add(Calendar.MINUTE, d2.get(Calendar.MINUTE));
cTotal.add(Calendar.SECOND, d2.get(Calendar.SECOND));
cTotal.add(Calendar.MILLISECOND, d2.get(Calendar.MILLISECOND));
//Display the dates and their sum
System.out.format(
"%s + %s = %s", d1.getTime(), d2.getTime(), cTotal.getTime());
}
}
Click Here to View the Output!
Sat Nov 28 20:28:40 UTC 2020 + Sat Nov 28 20:28:40 UTC 2020 = Tue Nov 26 16:57:20 UTC 4041
Click Here to View the Explanation!
- This program is used to add two current dates by using the Calendar class in Java.
- Two Calendar objects
d1
andd2
are created. Each of which store the current date. - The initial step involves the cloning of the object
d1
and copying all the date and time properties ofd2
consecutively. - The object
d1
is cloned and stored incTotal
to which all thed2
properties are added. - It is to be noted, since months in Java begin from 0, 1 is added to the
get(Calendar, MONTH)
method. - Finally, the getTime() is used to display the date and time of both the objects
d1
andd2
and then sum of the two which was stored in thecTotal
object.