復(fù)現(xiàn)
錯(cuò)誤代碼如下
SimpleDateFormat format = new SimpleDateFormat("YYYY-MM-dd HH:mm:ss");
看到這段代碼你肯定一時(shí)間難以看出問題所在。為啥只有幾個(gè)偏門機(jī)型會(huì)報(bào)錯(cuò)呢???幾番折騰,找到一個(gè)時(shí)間格式化編碼參照表

image.png
根據(jù)參照表,確實(shí)沒有Y這個(gè)格式的編碼,只有小寫y的格式編碼。這時(shí)我猜測(cè)會(huì)不會(huì)是這個(gè)原因呢?測(cè)試后發(fā)現(xiàn)還真是這個(gè)問題。
總結(jié)
//錯(cuò)誤寫法
SimpleDateFormat format = new SimpleDateFormat("YYYY-MM-dd HH:mm:ss");
//正確寫法
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
這里有人就會(huì)問,那為啥這么多機(jī)型都不報(bào)錯(cuò)!?。☆~,這個(gè)我真解釋不了,碰到bug改就是了,管它那么多干啥。所以面對(duì)這種問題,我們還是得嚴(yán)格按照規(guī)定的寫法去寫,不能抱有僥幸心理。