Calendarクラスの利用方法や
Getメソッドで日付の年だけや
月だけを取得するような内容を開設します。
Calendarクラス
特定の日付や指定した年・月・日・秒などを操作するクラスです。
「java.until.Calendar」をimportする必要があります。
Date型と一緒に使われることも多いので
Date型の宣言方法など以下ご覧ください
【Java】date-日付の扱い型サンプルコード
import java.util.Calendar;
import java.util.Date;
public class Main {
public static void main (String[] args) {
Date dt = new Date();
Calendar cal = Calendar.getInstance();
// 現在をセット
cal.setTime(dt);
System.out.println("現在:");
// 出力
printCalData(cal);
// 5年後を設定する
cal.add(Calendar.YEAR, 5);
System.out.println("5年後:");
printCalData(cal);
// 5ヶ月後を設定する(5年後を引き継いでいる)
cal.add(Calendar.MONTH, 5);
System.out.println("5年5ヶ月後:");
printCalData(cal);
// 5日後を設定する(5年5ヶ月後を引き継いでいる)
cal.add(Calendar.DATE, 5);
System.out.println("5年5ヶ月5日後:");
printCalData(cal);
// calの中5年5ヶ月5前に設定してみる
// 5年前を設定する
cal.add(Calendar.YEAR, -5);
// 5ヶ月前を設定する
cal.add(Calendar.MONTH, -5);
// 5日前を設定する
cal.add(Calendar.DATE, -5);
System.out.println("5年5ヶ月5日前:");
printCalData(cal);
}
public static void printCalData (Calendar cal) {
int year = cal.get(Calendar.YEAR);
int month = cal.get(Calendar.MONTH);
int day = cal.get(Calendar.DAY_OF_MONTH);
System.out.println(
year + "年" + month + "月" + day + "日");
}
}
実行結果
Sat Oct 29 00:30:00 JST 2022
現在:
2022年9月29日
5年後:
2027年9月29日
5年5ヶ月後:
2028年2月29日
5年5ヶ月5日後:
2028年3月3日
5年5ヶ月5日前:
2022年9月29日
Calendar⇔String変換はこちら