用JAVA语言写一个程序,并在代码里写好详细注释: 根据输入的参数年份,在控制台输出 每个月的日历。 如:输入参数2017,则在控制台输出如下(使用TAB键对齐)总共12个月的
时间: 2024-05-11 19:17:32 浏览: 65
用JAVA实现的一个小小的控制台日历程序
代码如下,注释已经写在代码里面了:
```java
import java.util.Calendar;
public class CalendarPrinter {
public static void main(String[] args) {
// 检查输入参数是否正确
if (args.length != 1) {
System.out.println("请输入正确的年份作为参数,例如:java CalendarPrinter 2017");
return;
}
int year = Integer.parseInt(args[0]);
// 检查年份是否合法
if (year < 0 || year > 9999) {
System.out.println("请输入正确的年份作为参数,例如:java CalendarPrinter 2017");
return;
}
// 循环输出每个月的日历
for (int month = 1; month <= 12; month++) {
// 获取当前月份的Calendar对象
Calendar calendar = Calendar.getInstance();
calendar.set(year, month - 1, 1); // 月份从0开始,所以要减1
// 输出月份和星期几的标题
System.out.println(year + "年" + month + "月");
System.out.println("日\t一\t二\t三\t四\t五\t六");
// 输出日期
int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK) - 1; // 星期天是1,所以要减1
for (int i = 0; i < dayOfWeek; i++) {
System.out.print("\t");
}
int maxDayOfMonth = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
for (int day = 1; day <= maxDayOfMonth; day++) {
System.out.print(day + "\t");
if ((dayOfWeek + day) % 7 == 0) {
System.out.println();
}
}
System.out.println();
}
}
}
```
使用方法:
1. 使用文本编辑器将以上代码保存为CalendarPrinter.java文件;
2. 打开终端或命令行窗口,进入代码所在目录;
3. 编译代码:javac CalendarPrinter.java;
4. 运行程序:java CalendarPrinter 2017。
阅读全文