微信公众号:爱问CTO
专业编程问答社区
www.askcto.com
jDK6的SimpleDateFormat只有小“y”,没有大“Y”。JDK7开始引入了大“Y”,表示Week year。
Week year意思是当天所在的周属于的年份,一周从周日开始,周六结束,只要本周跨年,那么这周就算入下一年。例如2017年12月31日,本周(2017年12月31日-2018年1月6日)本周跨年了。就进入了下一年。
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
calendar.set(2017, Calendar.DECEMBER, 31);
Date strDate1 = calendar.getTime();
SimpleDateFormat sf1 = new SimpleDateFormat("YYYY-MM-dd");
System.out.println("大写 YYYY: " + sf1.format(strDate1));
SimpleDateFormat sf2 = new SimpleDateFormat("yyyy-MM-dd");
System.out.println("小写 yyyy: " + sf2.format(strDate1));
}
结果:
大写 YYYY: 2018-12-31
小写 yyyy: 2017-12-31
微信公众号:爱问CTO
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。