検索すると結構見つかるものですが、JavaのCalendar#getActualMaximumを使った間違ったサンプルを多く見かけるので正しいやり方をメモメモ。相手の力量をはかるためのクイズとして使っても良いかもしれませんね。 カレンダーがgetInstance()じゃない事は言及しません。 以下は2006年2月の月末日を求めるコードです。 ●とりあえず間違ったコード GregorianCalendar c = new GregorianCalendar(Locale.JAPAN); c.set(Calendar.YEAR, 2006); c.set(Calendar.MONTH, 2 - 1); System.out.println(c.getActualMaximum(Calendar.DAY_OF_MONTH)); 何がいけないか。 月末に実行してみるとわかると思います。 仮に今日が