以下のプログラムでは「2009/3/33」というありえない入力値をパースしようとしているので、エラーが出ることを期待する。しかし実際は繰り上がって「2009/4/2」という日付オブジェクトが生成されてしまう。 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy/MM/dd"); Date date = simpleDateFormat.parse("2009/3/33"); System.out.println(date); こういう時どうするかというと、パースする前に以下のように設定しておくことでパース処理が厳密になり、エラーが発生するようになる。 simpleDateFormat.setLenient(false); 仕事中に後輩に質問されたものの、久々だったのでなかなか思い出せなかった。「Lenient」は馴染