雖然開發多年,依然會遇到很多坑,很多知識並不是學以致用,而是實踐出真知,譬如:
public static void main(String[] args) {
try {
String dateStr="2019-03-27";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd hh:MM:ss");
Date date = sdf.parse(dateStr);
System.out.println(date);
} catch (ParseException e) {
e.printStackTrace();
}
}
運行報錯,如圖:
經過查找原因才知道,SimpleDateFormat只能格式化比自己精度長的時間,或者相同的時間精度,不能格式化比自己精度短的時間。正確的寫法如下:
public static void main(String[] args) {
try {
String dateStr="2019-03-27 00:00:00";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd hh:MM:ss");
Date date = sdf.parse(dateStr);
System.out.println(date);
} catch (ParseException e) {
e.printStackTrace();
}
}
輸出如下: