JavaでCalendarを使ってDateを操作する

Date型のdateがあったとして、次のように日付を操作することができます。

Calendar cal = Calendar.getInstance();//現在時刻のカレンダーを作成
cal.setTime(date);//カレンダーをdateと同じ時間に設定
cal = DateUtils.truncate(cal, Calendar.DAY_OF_MONTH);// 時分秒を切り捨てる
cal.add(Calendar.DATE, 1);// 一日進める
cal.add(Calendar.MINUTE, -1);// 一分戻す
cal.set(Calendar.SECOND, 59);//59秒に設定
date = cal.getTime();//dateを更新(23:59:59)