Arizona TimeZone Horário de verão

Estou tentando obter hora atual em fusos horários específicos. Eu tentei seguir o código.

Calendar j = new GregorianCalendar(TimeZone.getTimeZone("US/Mountain"));
j.setTimeInMillis(Calendar.getInstance().getTimeInMillis());
System.out.println(j.get(Calendar.HOUR_OF_DAY)+":"+j.get(Calendar.MINUTE));
TimeZone tz = TimeZone.getTimeZone("US/Mountain");
System.out.println("tz.getRawOffset()"+tz.getRawOffset()/3600);
System.out.println(tz.getDSTSavings());
System.out.println

(tz.inDaylightTime(new Date()));

A resposta que obtive é surpreendente - 16:57 - errado por 1 hora tz.getRawOffset () - 7000 3600000 true - por que o horário de verão é verdadeiro para o Arizona? Como obter a hora correta do relógio de parede de Phoenix ou qualquer outra cidade nos EUA?

questionAnswers(3)

yourAnswerToTheQuestion