模擬電腦上的日曆:
import java.util.Scanner;
import java.util.Calendar;
public class RiLi{
public static void main(String[] args){
Scanner can=new Scanner(System.in);
System.out.print("請輸入你要查詢的年份和月份,以空格隔開:");
int year=can.nextInt(); //年份
int month=can.nextInt(); //月份
System.out.println();
//獲取每個月的第一天是星期幾
Calendar der=Calendar.getInstance();
der.set(der.YEAR,year);
der.set(der.MONTH,month-1);
der.set(der.DATE,1);
int week;
week=der.get(der.DAY_OF_WEEK);
// System.out.println(week);
//輸出每個星期
String[] str ={"日","一","二","三","四","五","六"};
for(int i=0;i<=6;i++){
System.out.print(str[i]+"\t");
}
System.out.println();
//根據輸入判斷每個月各有多少天
int days;
switch(month){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:days=31;break;
case 4:
case 6:
case 9:
case 11:days=30;break;
case 2:if(year%4==0&&year%100!=0||year%400==0){
days=29;
}else{
days=28;
}break;
default:days=30;
}
//對應星期循環輸出日期
int g = 0;
for(int i = 1;i<week;i++){
System.out.print("\t");
}
for(int i = 1;i<=days;i++){
System.out.print(i+"\t");
g = week + i-1;
if(g % 7 == 0){
System.out.println();
}
}
}
}