日付の変数 nowDate 型があり、次の月の最終日を含む変数 nextDate を設定したい。
例: nowDate = 2013-04-16
したがって、nextDate には 2013-05-31 が含まれます
どうやってやるの?
日付の変数 nowDate 型があり、次の月の最終日を含む変数 nextDate を設定したい。
例: nowDate = 2013-04-16
したがって、nextDate には 2013-05-31 が含まれます
どうやってやるの?
試す
private static Date getNextDate(Date nowDate) {
    Calendar c = Calendar.getInstance();
    c.setTime(nowDate);
    c.add(Calendar.MONTH, 1);
    c.set(Calendar.DATE, c.getMaximum(Calendar.DATE));
    Date nextDate = c.getTime();
    return nextDate;
}
使用法:
    Date nowDate = new Date();
    Date nextDate = getNextDate(nowDate);
a を 2 か月先の 1 日目に設定してCalendarから、1 日を差し引くことができます。
Calendar c = Calendar.getInstance();
c.add(Calendar.MONTH, 2);
c.set(Calendar.DAY_OF_MONTH, 1);
c.add(Calendar.DATE, -1);
Date nextDate = c.getTime();
他の人がすでに指摘しているように、1 か月を追加して、翌月Calendar.getActualMaximum()の最終日を設定することもできます。
Calendar c = Calendar.getInstance();
c.add(Calendar.MONTH, 1);
c.set(Calendar.DAY_OF_MONTH, c.getActualMaximum(Calendar.DAY_OF_MONTH));
Date nextDate = c.getTime();
カレンダーを使用:
まず、カレンダーを次の月に設定します。使用する:cal.add(Calendar.MONTH, 1);
次に、 getActualMaximumを使用して、前の手順で設定した月の最終日を計算します。
import java.util.Calendar; 
import java.util.Date;
public class Main{
    public static void main(String ar[]){
        Calendar cal = Calendar.getInstance();
        cal.set(Calendar.DATE, cal.getActualMaximum(Calendar.DATE));
        cal.add(Calendar.MONTH, 1);
        Date lastDateOfNextMonth = cal.getTime();
        System.out.println(lastDateOfNextMonth ); 
    }
}
非常に多くの良い回答がありますが、上記の回答にはすべて次のようなコードがあります。
cal.add(Calendar.MONTH, 1);
Months は 0 から始まり、1 は 2 月を表すため、このコードは少し混乱を招きます。
(編集: add() 関数の整数は月数 (1=2 月) ではなく、追加する月数です)