PrintCalendar.java
时间: 2023-11-22 16:53:13 浏览: 30
以下是一个简单的Java程序,用于打印给定年份和月份的日历。
```java
import java.util.*;
public class PrintCalendar {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入年份:");
int year = sc.nextInt();
System.out.print("请输入月份:");
int month = sc.nextInt();
printCalendar(year, month);
}
public static void printCalendar(int year, int month) {
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, year);
cal.set(Calendar.MONTH, month - 1);
cal.set(Calendar.DATE, 1);
int firstDayOfWeek = cal.get(Calendar.DAY_OF_WEEK);
int lastDateOfMonth = cal.getActualMaximum(Calendar.DATE);
System.out.printf("%d年%d月\n", year, month);
System.out.println("日\t一\t二\t三\t四\t五\t六");
for (int i = 1; i < firstDayOfWeek; i++) {
System.out.print("\t");
}
for (int i = 1; i <= lastDateOfMonth; i++) {
System.out.printf("%d\t", i);
if ((i + firstDayOfWeek - 1) % 7 == 0) {
System.out.println();
}
}
}
}
```
该程序首先通过Scanner类从控制台获取用户输入的年份和月份。然后,使用Calendar类将日期设置为给定的年份和月份的第一天。接下来,计算出该月份的第一天是星期几以及该月份的最后一天是哪一天。最后,使用循环打印出整个月份的日历。