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

opt*_*nal 8 java datetime java-8

在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);
        }

    }
Run Code Online (Sandbox Code Playgroud)

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

例如

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

我正在使用Asia/Calcutta TimeZone

Jon*_*eet 33

那是正确的时间.注意结尾处的"Z",表示UTC中的UTC - 11:01:25是亚洲/加尔各答的16:31:25.

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

  • `Z`是`Zulu`的缩写,意思是[UTC](https://en.m.wikipedia.org/wiki/Coordinated_Universal_Time). (10认同)