I have a date time that I am first converting to local time, followed by a conversion to another time zone. The first conversion works with no issue however the second conversion is ignored. What is the issue?
String input = "2020-05-20 01:10:05";
SimpleDateFormat localFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
localFormat.setTimeZone(TimeZone.getTimeZone(ZoneId.systemDefault()));
try {
    Date date = localFormat.parse(input);
    System.out.println(date); //Wed May 20 01:10:05 PDT 2020 <--- Logs this (Expected)
    SimpleDateFormat estFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    estFormat.setTimeZone(TimeZone.getTimeZone("America/New_York"));
    
    String newDate = estFormat.format(date);
    System.out.println(newDate); //2020-05-20 04:10:05 <--- Logs this (Expected)
    Date dateEst = estFormat.parse(newDate);
    System.out.println(dateEst); //Wed May 20 01:10:05 PDT 2020 <--- Logs this (Unexpected) Should be Wed May 20 04:10:05 EST 2020
}catch (Exception e){
    e.printStackTrace();
}
It seems like the second estFormat.parse() is ignored when trying to convert to America/New_York time zone.
 
     
     
    