java 8 Instant.now() 显示错误的即时时间

2022-09-02 23:11:10

在Java 8方法中显示错误的时间。我的代码看起来像:Instant.now()

import java.time.*;
import java.time.temporal.*;
public class DateTimeDemo{
    public static void main(String []args){
            Instant now = Instant.now();
            System.out.println(now);
        }

    }

它的日期部分是正确的,但时间部分。

例如

2016-07-11T11:01:25.498Z 但在我的系统中是下午4.31

我使用的是亚洲/加尔各答时区


答案 1

这是正确的时间。请注意末尾的“Z”,表示 UTC - UTC 中的 11:01:25 在亚洲/加尔各答为 16:31:25。

如果要在默认时区中表示“now”,请改用 ZonedDateTime.now()。


答案 2