Every so often I get myself confused about Java’s often-obtuse handling of dates and timezones. So, for my future self’s benefit, here are some reminder notes…
Please leave a comment if you have corrections or additional tips! (And, preemptively, yes, some day I’ll give Joda Time a try.)
Date
s do not have timezones; they reflect UTC.Date.toString()
returns aString
representation based on the local machine’s default timezone. This makes people think thatDate
s have timezones.- You cannot convert a
Date
from one timezone to another.
- However, you can use
DateFormat
to affect theString
representation of aDate
, including the timezone.