DateTime start = new DateTime().withYear(1884);
System.out.println(start);
System.out.println(start.minusYears(1));
Output
1884-01-11T08:26:10.234-08:00
1883-01-11T08:26:10.234-07:52:58
Edit 1: I was not correct. It did not removed 1.02 sec
DateTime start = new DateTime().withYear(1884);
DateTime other = start.minusYears(1);
long diffMs = start.getMillis() - other.getMillis(); //31536422000
Edit 2:
Interesting, I was confused by the output for toString();
- (-08:00
, -07:52:58
)
Edit 3:
With Java Calendar, I don't see any differences:
Calendar cal = Calendar.getInstance();
cal.set(start.getYear(),
start.getMonthOfYear(),
start.getDayOfMonth(),
start.getHourOfDay(),
start.getMinuteOfHour(),
start.getSecondOfDay());
System.out.println(cal.getTime());
cal = Calendar.getInstance();
cal.set(start.getYear()- 1,
start.getMonthOfYear(),
start.getDayOfMonth(),
start.getHourOfDay(),
start.getMinuteOfHour(),
start.getSecondOfDay());
System.out.println(cal.getTime());
Output:
Mon Feb 11 18:46:42 PST 1884
Sun Feb 11 18:46:42 PST 1883