Como posso definir um calendário com horário UT

Os postersAqu diga que a data está sempre no horário UTC. No entanto, se eu criar uma Data (), criar um Calendário e definir a hora do calendário com a data, a hora permanecerá no meu horário local (e não estou no horário UTC. Testei isso imprimindo a data do calendário em um loop, subtraindo uma hora por loop. São 23 horas do dia 19 de maio aqui e leva 24 loops antes que a data mude para o dia 18 de maio. Atualmente são 13 horas do UTC, portanto, se o calendário foi definido corretamente, levaria apenas 14 rotações

    Date date = new Date();
    Calendar calendar = Calendar.getInstance();
    calendar.setTime(date);

    SimpleDateFormat dateFormatter = new SimpleDateFormat("yyyy-MM-dd");

    int index = 0;
    for(; index > -30; index--)
    {
        System.out.println(index);
        System.out.println(dateFormatter.format(calendar.getTime()));
        System.out.println();
        calendar.add(Calendar.HOUR, -1);
    }

questionAnswers(1)

yourAnswerToTheQuestion