カレンダークラスを使用してJavaで日付を書く方法は何ですか?

Java.util.Calendarクラスを使用すると、簡単にカレンダープログラムを書くことができます。以下は、特定の月のカレンダーを印刷する方法を示したサンプルコードです:

import java.util.Calendar;

public class CalendarExample {
    public static void main(String[] args) {
        // 获取当前日期
        Calendar calendar = Calendar.getInstance();
        int year = calendar.get(Calendar.YEAR);
        int month = calendar.get(Calendar.MONTH);

        // 设置日期为指定月份的第一天
        calendar.set(year, month, 1);

        // 获取该月的天数
        int daysInMonth = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);

        // 获取该月的第一天是星期几
        int firstDayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);

        // 打印日历标题
        System.out.println("日 一 二 三 四 五 六");

        // 打印该月的第一周前面的空格
        for (int i = 1; i < firstDayOfWeek; i++) {
            System.out.print("   ");
        }

        // 打印该月的日期
        for (int day = 1; day <= daysInMonth; day++) {
            System.out.printf("%2d ", day);

            // 换行
            if ((day + firstDayOfWeek - 1) % 7 == 0) {
                System.out.println();
            }
        }
    }
}

このプログラムは、最初に現在の年と月を取得し、Calendarクラスを使用してその月の初日に日付を設定します。次に、その月の日数と初日が何曜日かを取得します。そして、週の7日間の順序でカレンダーを印刷します。ループの中で、まずその月の最初の週の前に空白を印刷し、週の7日間の順序で日付を印刷します。日曜日に遭遇した場合、改行します。

bannerAds