Как System.currentTimeMillis()/1000 работает в JAVA

Я просто хочу понять метод currentTimeMillis()/1000L в системном классе. Насколько я понимаю, этот метод будет возвращать текущее время в секундах. У меня есть сомнения здесь Если я запускаю один и тот же код в Local jvm (IST), а удаленный блок (Sanjose) будет возвращать разные значения в качестве вывода?

Может кто-нибудь объяснить мне, как это работает, если мы запустим код в другой JVM, которая будет выходить из США и Индии. Это возвращает тот же вывод? или разные?

3 ответа

Решение

Возвращает количество мс с начала эпохи Unix, которое не зависит от часового пояса. Следовательно, он должен возвращать тот же результат.

Код вернет тот же вывод, потому что функция.currentTimeMillis() использует часовой пояс UTC, а не местный часовой пояс JVM.

См. Документацию Oracle: https://docs.oracle.com/javase/7/docs/api/java/lang/System.html.

Он дает количество миллисекунд, прошедших с начала эпохи, 00:00:00 on 1 January 1970, Это также называется Unix time. Узнайте больше об этом здесь https://en.wikipedia.org/wiki/Unix_time

Другие вопросы по тегам