yyyy与YYYY、dd与DD、mm与MM、hh与HH的区别:
Date now = new Date(); // 2024-02-02 14:26:xx、Fri Feb 02 14:26:xx CST 2024
小写y是指Year、大写Y是指Week year(Week year是当天所在的周属于的年份,一周从周日开始,周六结束,只要本周跨年,那么这周就算入下一年)
System.out.println("y(年份):" + DateUtil.format(now, "y")); // y(年份):2024
System.out.println("y(年份):" + DateUtil.format(now, "yyyy")); // y(年份):2024
System.out.println("Y(该天所在周所属年份):" + DateUtil.format(now, "Y")); // Y(该天所在周所属年份):2024
System.out.println("Y(该天所在周所属年份):" + DateUtil.format(now, "YYYY")); // Y(该天所在周所属年份):2024
小写d是指月中的日号(1-31)、大写D是指该天在全年天数(0-365)
System.out.println("d(月中的号):" + DateUtil.format(now, "d")); // d(月中的号):2
System.out.println("d(月中的号):" + DateUtil.format(now, "dd")); // d(月中的号):02
System.out.println("D(全年天数):" + DateUtil.format(now, "D")); // D(全年天数):33
System.out.println("D(全年天数):" + DateUtil.format(now, "DD")); // D(全年天数):33
小写mm是指小时中的分钟数、大写MM是指年中的月份
System.out.println("m(小时中的分钟数):" + DateUtil.format(now, "m")); // m(小时中的分钟数):26
System.out.println("m(小时中的分钟数):" + DateUtil.format(now, "mm")); // m(小时中的分钟数):26
System.out.println("M(中的月份):" + DateUtil.format(now, "M")); // M(中的月份):2
System.out.println("M(中的月份):" + DateUtil.format(now, "MM")); // M(中的月份):02
小写hh是指12小时制、大写指HH是24小时制
System.out.println("h(12小时制):" + DateUtil.format(now, "h")); // h(12小时制):2
System.out.println("h(12小时制):" + DateUtil.format(now, "hh")); // h(12小时制):02
System.out.println("H(24小时制):" + DateUtil.format(now, "H")); // H(24小时制):14
System.out.println("H(24小时制):" + DateUtil.format(now, "HH")); // H(24小时制):14
所以正确格式:yyyy-MM-dd HH:mm:ss