1. 程式人生 > >java如何列印萬年曆

java如何列印萬年曆

Scanner input=new Scanner(System.in);
  System.out.println("<<<<<萬年曆>>>>>");
  int year=0;
  int month=0;
  System.out.print("請輸入年份:");
  year=input.nextInt();
  System.out.print("請輸入月份:");
  month=input.nextInt();
  //例項化一個當前的日曆物件
  Calendar cd=Calendar.getInstance();
  
  //設定日曆物件的年,月,日
  cd.set(Calendar.YEAR, year);
  cd.set(Calendar.MONTH, month-1);
  cd.set(Calendar.DATE, 1);
  
  //得到當前月份的最大值
  int day=cd.getActualMaximum(Calendar.DATE);
  //得到本月的第一天是星期幾
  int week=cd.get(Calendar.DAY_OF_WEEK);
  int count=0;//一個計數變數
  
  System.out.println("\n\t\t"+year+"年"+month+"月\n");
  //列印日曆的星期
  String strDate[]={"日\t","一\t","二\t","三\t","四\t","五\t","六\t"};
  for(int i=0;i<strDate.length;i++)
  {
   System.out.print(strDate[i]);
  }
  System.out.println("\n");
  
  //判斷第一天對應的是星期幾
  while(count<week-1)
  {
   System.out.print("\t");
   count++;
  }
  
  //迴圈列印日曆
  for(int l=1;l<=day;l++,count++)
  {
   //包含前面的空格
   if(count%7==0)
   {
    System.out.println();
   }
   System.out.print(l+"\t");
  }