Because you used YYYY
when you needed yyyy
and July 20, 2015 was a Monday. You wanted something like
String userDateFormat = "HHmm 'hrs', EEEE, MMMM dd, yyyy";
SimpleDateFormat userDateFormatter = new SimpleDateFormat(
userDateFormat);
String reference_date = "2000 hrs, Monday, July 20, 2015";
which then outputs
2000 hrs, Monday, July 20, 2015
Then SimpleDateFormat
Javadoc says (in part)
Letter Date or Time Component Presentation Examples G Era designator Text AD y Year Year 1996; 96 Y Week year Year 2009; 09