公式ドキュメント:SimpleDateFormat (Java Platform SE 8) 便利かつ頻繁に利用される SimpleDateFormat クラスだが、実際のところ罠が多い。 知らずに罠を踏んでいる事例を身の回りで何度も目にした上に、罠を網羅的にまとめた記事が少ないことに気がついたので、書いてみた。 まとめ マルチスレッドで使うと壊れる : 下手なことはせずインスタンスは毎回作るべし 実在しない日時が通る : setLenient(false) すべし 文字の不足や過剰があっても通る : format 結果と突き合わせるべし 全対策を盛り込んだコード License: 以下 DateTimeUtil クラスのライセンスは Public Domain とする import java.util.Date; import java.text.ParseException; impo