Стандартные API даты и времени Java не очень хороши для операций с датами. Если вы хотите делать реальные вычисления по датам, я предлагаю библиотеку, такую как Joda-Time, которая имеет гораздо лучшую функциональность для таких случаев.
Вот код Joda-Time, следующий за тем же примером, который использовался в вопросе:
DateTime now = new DateTime();
DateTime twoYearsAgo = now.minusYears(2);
DateTime fiveDaysFromNow = now.plusDays(5);
DateTimeFormatter formatter = new DateTimeFormatterBuilder()
.appendPattern("E yyyy.MM.dd 'at' hh:mm:ss a zzz")
.toFormatter();
System.out.println(formatter.print(twoYearsAgo));
System.out.println(formatter.print(fiveDaysFromNow));
Предполагается, что вы хотите работать с часовым поясом системы по умолчанию (меридиан). Если это не так, существует аргумент конструктора для установки часового пояса, который будет использоваться.