万年历
2020.09.20
用Java写万年历。
输入年份,月份,输出如图所示效果。
一、效果图
二、代码如下
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.Scanner;
public class MonthlyCalendarDemo {
static final String[] weekDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int counter = 0 ;
System.out.println("请输入年份:");
int year = scan.nextInt();
System.out.println("请输入月份:");
int month = scan.nextInt()-1;
GregorianCalendar gCale = new GregorianCalendar(year,month,1);
int totalDay = gCale.getActualMaximum(Calendar.DAY_OF_MONTH);
int startWeekDay = gCale.get(Calendar.DAY_OF_WEEK)-1;
for (String weekDay : weekDays){
System.out.printf(weekDay+" ");//两个空格
}
System.out.println();
for (counter = 0; counter<startWeekDay;counter++){
System.out.printf(" ");//七个空格
}
for (int day = 1; day<totalDay;day++){
System.out.printf(" %2d ",day);//前二后三
counter++;
if (counter%7==0){
System.out.println();//换行
}
}
}
}