package com.softeem.demo;
public class Rili {
//判断是否为闰年
public boolean isLeapYear(int year){
if(year % 400 == 0 ||(year % 4 == 0 && year % 100 != 0)){
return true;
}
return false;
}
//计算从1900年到当前年份月份总天数(不包含当前月)
public int totalDayFrom1900(int year,int month){
int days = 0;
for (int i = 1900; i < year; i++) {
if(isLeapYear(i)){
days += 366;
}else{
days += 365;
}
}
for(int i = 1;i < month; i++){
days+= dayOfMonth(year, i);
}
return days;
}
//获取当月中的天数
public int dayOfMonth(int year,int month){
switch(month){
case 2:
return isLeapYear(year)?29:28;
case 4:
case 6:
case 9:
case 11:
return 30;
default:
return 31;
}
}
public int getWeek(int year,int month){
int days = totalDayFrom1900(year, month);
int n = days % 7;
return n;
}
public void printMonth(int year,int month){
int count = 0;
//打印空格
for (int i = 0; i < getWeek(year, month); i++) {
count++;
if(count == 7){
count = 0;
System.out.println();
}else{
System.out.print("\t");
}
}
for (int i = 1; i <= dayOfMonth(year, month); i++) {
count++;
System.out.print(i+"\t");
//一周换行输出
if(count == 7){
count = 0;
System.out.println();
}
}
}
public static void main(String[] args) {
Rili rl = new Rili();
int year = 2020;
int month = 11;
System.out.println("===============Softeem动态日历【"+year+"年"+month+"月】==============");
System.out.println("一\t二\t三\t四\t五\t六\t日");
System.out.println("==================================================");
rl.printMonth(year, month);
System.out.println();
}
}
打印当前月份日历
最新推荐文章于 2021-02-24 10:22:32 发布