使用java.util.Calendar
類可以很方便地編寫一個日歷程序。下面是一個示例代碼,展示了如何使用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
類設置日期為該月的第一天。接下來,它獲取了該月的天數和第一天是星期幾。然后,它按照每周七天的順序打印出日歷。在循環中,首先打印出該月的第一周前面的空格,然后按照每周七天的順序打印出日期。如果遇到周日,則換行。