关于万年历的Java代码分析
1990.1.1是星期一 利用此就可以1990- 的所有年份
目标:输入年和月 --系统自带打印日历
解决:最终目标 知道当月一号是星期几即可
展示按照习惯开头是星期天 星期天—星期六 分别是0-6
所以算出输入年份-1990 的天数 days%7 得到星期几
天数=整年加上整月
整年:
int initYears=1990;
for (; initYears <curYears ; initYears++) {
if ((initYears%4==0&&initYears%100!=0)||initYears%400==0){
days+=366;//闰年的判断
}else{
days+=365;
}
}
输入curYears curYears-initYears 算出整年有多少天(其中有关于润年的算法(两种情况:能被400整除或者能被4整除且不能呗100整除))
随后算出整月有多少:for循坏也行 Switch也行当然你有更好的随便(仅作参考)
for (int j=0; j <curMonth; j++) {
switch (j){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
days+=31;
break