java日期格式化YYYY-MM-dd遇坑指南小结

前几天写日期格式化工具类,自己做测试的时候,无意中发现一个问题,如果把format参数设置成YYYY-MM-DD,输出的结果很奇怪。

Date result1 = string2Date("2016-12-15", "yyyy-MM-dd"); System.out.println(result1); Date result2 = string2Date("2016-12-15", "YYYY-MM-DD"); System.out.println(result2); Date date1 = new Date(); System.out.println(date2String(date1, "yyyy-MM-dd")); System.out.println(date2String(date1, "YYYY-MM-DD"));

结果:

Thu Dec 15 00:00:00 CST 2016
Sun Dec 27 00:00:00 CST 2015
2016-12-20
2016-12-355

第一种情况下,明明是2016年的日期,转完格式变成了2015年。。。我去
试验版本jdk1.7,我看有些文章说,y是year,Y是week year,比如:

开发中还是用yyyy-MM-dd来做日期格式化,其它的就不要用了。

yyyy-MM-dd HH:mm:ss
年-月-日 时:分:秒

大写是为了区分“ 月”与“ 分”

顺便说下HH为什么大写,是为了区分 12小时制与 24小时制。
小写的h是12小时制,大写的H是24小时制

有的时候我们会看到这样的格式:yyyy-M-d H:m:s
mm与m等,它们的区别为 是否有前导零:H,m,s表示 非零开始,HH,mm,ss表示 从零开始。
比如凌晨1点2分,HH:mm显示为 01:02,H:m显示为 1:2

到此这篇关于java日期格式化YYYY-MM-dd遇坑指南小结的文章就介绍到这了,更多相关java YYYY-MM-dd内容请搜索易知道(ezd.cc)以前的文章或继续浏览下面的相关文章希望大家以后多多支持易知道(ezd.cc)!

推荐阅读

    Yitg(Yeston)r5550-hm1024GDDR5至尊版

    Yitg(Yeston)r5550-hm1024GDDR5至尊版,,如果你正在寻找一个300-400升级显卡,所以请在流氓看推荐升级卡Yeston中档(Yeston)r5550-hm1024gd5 TB 6

    确定java按钮响应事件的代码

    确定java按钮响应事件的代码,,* 阅读本文可以结合最后在java登录窗口界面下面是一个链接。 是定义的容器。 容器(CP =得到内容面板); / /

    支持DDR3!AM3接口790gx主板的评价

    支持DDR3!AM3接口790gx主板的评价,,二月,在主板市场,各种各样的AM3主板将推出。对Phenom II处理器的刺激下,每一个主板制造商不能忽视这样一个

    java电脑驱动下载|java驱动开发

    java电脑驱动下载|java驱动开发,,1. java驱动开发你可以写一个线程去执行 也可以用java计数器去写 (多少时间执行一次)以下为定时器代码My

    计算机白必须看到DDoS攻击的五个误解

    计算机白必须看到DDoS攻击的五个误解,,近年来,黑客的DDoS攻击有上升的趋势,专家们正在努力击败他们,提高网络的安全性。分析人士预测,全球DDoS

    电脑主板ddr3原理图|DDR3原理

    电脑主板ddr3原理图|DDR3原理,,1. DDR3原理应该是总线供电,有些主板内存的总线供电在CPURST之后产生所以不上CPU就不出VTT,有的主板总线供电

    Ddns设置|光猫ddns设置

    Ddns设置|光猫ddns设置,,Ddns设置DDNS英文全称Dynamic Domain Name Server,中文含义是指动态域名服务。很多普通路由器或者智能路由器设置

    oracle中NUMBER类型和java中对应类型

    oracle中NUMBER类型和java中对应类型,类型,数据类型,问题: 今天在项目中遇到数据库中输入的值在web页面中会自动转变为科学计数,oracle中字