色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

java輸入年份和月份輸出日歷

在Java中,我們可以通過輸入年份和月份,來實(shí)現(xiàn)輸出對(duì)應(yīng)月份的日歷。

/**
 * 輸入年份和月份,輸出對(duì)應(yīng)月份的日歷
 */
public static void printCalendar(int year, int month) {
int days = 0;   // 該月份的天數(shù)
int firstDayOfWeek = 0; // 該月份的第一天是周幾
int count = 0;  // 輸出計(jì)數(shù)器,用于換行
// 計(jì)算該月份的天數(shù)
if (month == 2) {   // 二月份特判
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {
days = 29;
} else {
days = 28;
}
} else if (month == 4 || month == 6 || month == 9 || month == 11) {
days = 30;
} else {
days = 31;
}
// 計(jì)算該月份的第一天是周幾
Calendar cal = Calendar.getInstance();
cal.set(year, month - 1, 1);
firstDayOfWeek = cal.get(Calendar.DAY_OF_WEEK) - 1;
// 輸出日歷表頭
System.out.println(year + "年" + month + "月");
System.out.println("一\t二\t三\t四\t五\t六\t日");
// 輸出日歷
for (int i = 0; i< firstDayOfWeek; i++) {
System.out.print("\t");
count++;
}
for (int i = 1; i<= days; i++) {
System.out.print(i + "\t");
count++;
if (count % 7 == 0) {   // 每輸出七天換一行
System.out.println();
count = 0;
}
}
if (count != 0) {   // 最后一行沒有輸出滿時(shí),要補(bǔ)齊到七天
for (int i = count; i< 7; i++) {
System.out.print("\t");
}
System.out.println();
}
}

以上代碼的實(shí)現(xiàn)原理是,首先通過年份和月份計(jì)算出該月份的天數(shù)和第一天是周幾,然后輸出日歷表頭,并根據(jù)第一天是周幾來輸出日歷。為了方便閱讀,我們每輸出七天就換一行。如果最后一行沒有輸出滿七天,我們則需要補(bǔ)齊到七天。

總體來說,通過Java實(shí)現(xiàn)輸出年份和月份對(duì)應(yīng)月份的日歷是一件比較簡單的事情,只需要掌握一些時(shí)間計(jì)算的知識(shí)點(diǎn)即可。