色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

java中日期格式化的大坑

瀏覽:3日期:2022-08-18 16:23:20
前言

我們都知道在java中進(jìn)行日期格式化使用simpledateformat。通過(guò)格式 yyyy-MM-dd 等來(lái)進(jìn)行格式化,但是你知道其中微小的坑嗎?

yyyy 和 YYYY

示例代碼

@Test public void testWeekBasedYear() { Calendar calendar = Calendar.getInstance(); // 2019-12-31 calendar.set(2019, Calendar.DECEMBER, 31); Date strDate1 = calendar.getTime(); // 2020-01-01 calendar.set(2020, Calendar.JANUARY, 1); Date strDate2 = calendar.getTime(); // 大寫(xiě) YYYY SimpleDateFormat formatYYYY = new SimpleDateFormat('YYYY/MM/dd'); System.out.println('2019-12-31 轉(zhuǎn) YYYY/MM/dd 格式: ' + formatYYYY.format(strDate1)); System.out.println('2020-01-01 轉(zhuǎn) YYYY/MM/dd 格式: ' + formatYYYY.format(strDate2)); // 小寫(xiě) YYYY SimpleDateFormat formatyyyy = new SimpleDateFormat('yyyy/MM/dd'); System.out.println('2019-12-31 轉(zhuǎn) yyyy/MM/dd 格式: ' + formatyyyy.format(strDate1)); System.out.println('2020-01-01 轉(zhuǎn) yyyy/MM/dd 格式: ' + formatyyyy.format(strDate2)); }

輸出的結(jié)果

2019-12-31 轉(zhuǎn) YYYY/MM/dd 格式: 2020/12/312020-01-01 轉(zhuǎn) YYYY/MM/dd 格式: 2020/01/012019-12-31 轉(zhuǎn) yyyy/MM/dd 格式: 2019/12/312020-01-01 轉(zhuǎn) yyyy/MM/dd 格式: 2020/01/01

臥槽?2019變成2020了?

YYYY 是怎么做到的呢

Java’s DateTimeFormatter pattern 'YYYY' gives you the week-based-year, (by default, ISO-8601 standard) the year of the Thursday of that week.下面就是用YYYY格式化代碼

12/29/2019 將會(huì)格式化到2019年 這一周還屬于2019年12/30/2019 將會(huì)格式化到2020年 這一周已經(jīng)屬于2020年看字說(shuō)話YYYY,week-based year 是 ISO 8601 規(guī)定的。2019-12-31號(hào)這一天,按周算年份已經(jīng)屬于2020年了,格式化之后就變成2020年,后面的月份日期不變。

dd和DD

示例代碼

private static void tryit(int Y, int M, int D, String pat) { DateTimeFormatter fmt = DateTimeFormatter.ofPattern(pat); LocalDate dat = LocalDate.of(Y,M,D); String str = fmt.format(dat); System.out.printf('Y=%04d M=%02d D=%02d ' + 'formatted with ' + ''%s' -> %sn',Y,M,D,pat,str); } public static void main(String[] args){ tryit(2020,01,20,'MM/DD/YYYY'); tryit(2020,01,21,'DD/MM/YYYY'); tryit(2020,01,22,'YYYY-MM-DD'); tryit(2020,03,17,'MM/DD/YYYY'); tryit(2020,03,18,'DD/MM/YYYY'); tryit(2020,03,19,'YYYY-MM-DD'); }

輸出結(jié)果

Y=2020 M=01 D=20 formatted with 'MM/DD/YYYY' -> 01/20/2020Y=2020 M=01 D=21 formatted with 'DD/MM/YYYY' -> 21/01/2020Y=2020 M=01 D=22 formatted with 'YYYY-MM-DD' -> 2020-01-22Y=2020 M=03 D=17 formatted with 'MM/DD/YYYY' -> 03/77/2020Y=2020 M=03 D=18 formatted with 'DD/MM/YYYY' -> 78/03/2020Y=2020 M=03 D=19 formatted with 'YYYY-MM-DD' -> 2020-03-79

這里的大寫(xiě)的DD代表的是處于這一年中那一天,不是處于這個(gè)月的那一天,但是dd就沒(méi)有問(wèn)題。

結(jié)論

格式化日期一定要選用 yyyy-MM-dd哦!

到此這篇關(guān)于java中日期格式化的大坑的文章就介紹到這了,更多相關(guān)java 日期格式化內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 99爱视频精品免视看 | 美女视频永久黄网站免费观看韩国 | 国产乱码一区二区三区四 | 国产一区二区三区免费视频 | 日本一区二区三区高清福利视频 | 欧美成人精品一区二区三区 | 在线日韩欧美 | 成人网视频在线观看免费 | 99久久精品免费看国产免费软件 | 国产伦一区二区三区四区久久 | 顶级毛片在线手机免费看 | 九九re6精品视频在线观看 | 久久成人综合网 | 国产亚洲毛片在线 | 中文字幕123区 | 免费视频精品一区二区三区 | 99精品国产兔费观看久久99 | 午夜宅男宅女看在线观看 | 欧美无玛 | 手机看片手机在线看片 | 久久国产三级精品 | 国产成人免费网站 | 亚久久伊人精品青青草原2020 | julia中文字幕久久亚洲 | 在线中文字幕亚洲 | 国产成人精品午夜视频' | 欧美一区二区三区免费不卡 | 偷柏自拍亚洲欧美综合在线图 | 国产毛片网站 | 精品日本亚洲一区二区三区 | 国产亚洲小视频 | 中文字幕在线观看一区 | 二区中文字幕 | 成人免费在线播放 | 成人精品一区二区激情 | 日韩18在线观看地址 | 日韩18在线观看地址 | 精品国产一区二区三区久久影院 | 毛片一级在线观看 | 国产成人免费在线视频 | 国产高清亚洲精品26u |