Java Calendar Month incrementMonth(Calendar cal)

Here you can find the source of incrementMonth(Calendar cal)

Description

Increments month of Calendar by one month.

License

Open Source License

Declaration

public static void incrementMonth(Calendar cal) 

Method Source Code

//package com.java2s;
/*/*from w  w w . j a  v a2 s.com*/
 * This file is part of DrFTPD, Distributed FTP Daemon.
 *
 * DrFTPD is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * DrFTPD is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with DrFTPD; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 */

import java.util.Calendar;

public class Main {
    /**
     * Increments month of Calendar by one month.
     *
     * If the following month does not have enough days,
     * the first day in the month after the following month is used.
     */
    public static void incrementMonth(Calendar cal) {
        Calendar cal2 = (Calendar) cal.clone();
        floorDayOfMonth(cal2);
        cal2.add(Calendar.MONTH, 1);

        if (cal.get(Calendar.DAY_OF_MONTH) > cal2.getActualMaximum(Calendar.DAY_OF_MONTH)) {
            floorDayOfMonth(cal);
            cal.add(Calendar.MONTH, 2);
        }

        cal.add(Calendar.MONTH, 1);
    }

    public static void floorDayOfMonth(Calendar cal) {
        cal.set(Calendar.DAY_OF_MONTH, cal.getActualMinimum(Calendar.DAY_OF_MONTH));
    }
}

Related

  1. getMonthStart(Calendar cal)
  2. getMonthStr(Calendar cal)
  3. getNextMonth(Calendar calendar, int month)
  4. getNumDaysInMonth(GregorianCalendar aCalendar)
  5. getStartOfMonth(Date day, Calendar cal)
  6. incrementMonthByVal(Calendar theCal, int val)
  7. intToCalendarMonth(int month)
  8. isFirstDayOfMonth(Calendar calendar)
  9. lastDayOfMonth(Calendar c)