I need explanation
package com.javarush.task.pro.task16.task1618;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
/*
Лишь бы не запутаться
*/
public class Solution {
public static void main(String[] args) {
ZoneId zone1 = ZoneId.of("Zulu");
ZoneId zone2 = ZoneId.of("Etc/GMT+8");
System.out.println(ZonedDateTime.now(zone1));
System.out.println(ZonedDateTime.now(zone2));
LocalDateTime time = changeZone(LocalDateTime.of(2020, 3, 19, 1, 40), zone1, zone2);
System.out.println(time);
}
static LocalDateTime changeZone(LocalDateTime fromDateTime, ZoneId fromZone, ZoneId toZone) {
ZonedDateTime time1 = ZonedDateTime.now(fromZone);
ZonedDateTime time2 = ZonedDateTime.now(toZone);
// LocalDateTime time1 = LocalDateTime.of(fromZone);
// LocalDateTime time2 = LocalDateTime.of(toZone);
int d = (time1.getDayOfYear() - time2.getDayOfYear());
System.out.println(d);
int hour = time2.getHour() - time1.getHour();
switch (d) {
case 0:
LocalDateTime toDateTime = fromDateTime.plusHours(hour);
System.out.println("Этот метод сработал");
break;
case -1:
case 1:
LocalDateTime toDateTime = fromDateTime.plusHours(24 - hour);
System.out.println("2");
break;
}
return toDateTime;
}
}