Java显示当前年份不正确

Mos*_*hta 4 java datetime

我已经编写了打印当前日期的代码.

Date date = new Date();
DateFormat dateFormat = new SimpleDateFormat("ddMMYYYY");
String newdate = dateFormat.format(date);
Run Code Online (Sandbox Code Playgroud)

但它输出为:29122016
实际输出应为:29122015
系统日期也正确.

代码有什么问题?

Mar*_*oun 11

Y表示一周的一年.你应该改为:

DateFormat dateFormat = new SimpleDateFormat("ddMMyyyy");
Run Code Online (Sandbox Code Playgroud)

SimpleDateFormat报道详细信息:

Letter | Date or Time Component | Presentation | Examples
-------+------------------------+--------------+----------
y      | Year                   | Year         | 1996; 96
Y      | Week year              | Year         | 2009; 09
Run Code Online (Sandbox Code Playgroud)