Java Day of setDays(Date date, int amount)

Here you can find the source of setDays(Date date, int amount)

Description

Sets the day of month field to a date returning a new object.

License

Apache License

Parameter

Parameter Description
date the date, not null
amount the amount to set

Exception

Parameter Description
IllegalArgumentException if the date is null

Return

a new Date object set with the specified value

Declaration

public static Date setDays(Date date, int amount) 

Method Source Code

//package com.java2s;
//License from project: Apache License 

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

public class Main {
    public static SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");

    /**// w w w . j  a  v  a  2  s. c  om
     * Sets the day of month field to a date returning a new object.
     * The original date object is unchanged.
     *
     * @param date  the date, not null
     * @param amount the amount to set
     * @return a new Date object set with the specified value
     * @throws IllegalArgumentException if the date is null
     * @since 2.4
     */
    public static Date setDays(Date date, int amount) {
        return set(date, Calendar.DAY_OF_MONTH, amount);
    }

    /**
     * Sets the specified field to a date returning a new object.  
     * This does not use a lenient calendar.
     * The original date object is unchanged.
     *
     * @param date  the date, not null
     * @param calendarField  the calendar field to set the amount to
     * @param amount the amount to set
     * @return a new Date object set with the specified value
     * @throws IllegalArgumentException if the date is null
     * @since 2.4
     */
    private static Date set(Date date, int calendarField, int amount) {
        if (date == null) {
            throw new IllegalArgumentException("The date must not be null");
        }
        // getInstance() returns a new object, so this method is thread safe.
        Calendar c = Calendar.getInstance();
        c.setLenient(false);
        c.setTime(date);
        c.set(calendarField, amount);
        return c.getTime();
    }

    public static String getTime(String pattern) {
        return new SimpleDateFormat(pattern).format(new Date());
    }
}

Related

  1. parseDay(String str, String type)
  2. parseDayTime(long ts)
  3. parseFromDays(String date)
  4. plusDay(Date date, int day)
  5. plusDays(Date date, int days)
  6. startOfDay(Date date, String format)
  7. stringSomeDaysAgo(Date currentTime, int days)
  8. strToShortday(String s)
  9. subtractDate(Date d, long day)