用JAVA代码构造一个日历

 1 package day0603;
 2 
 3 import java.text.ParseException;
 4 import java.text.SimpleDateFormat;
 5 import java.util.Calendar;
 6 import java.util.Date;
 7 import java.util.Scanner;
 8 
 9 public class Demo3 {    //2015-06-03
10     public static void main(String[] args) {
11         System.out.print("请输入日期(yyyy-MM-dd):");
12         Scanner scan = new Scanner(System.in);
13         String str = scan.next();
14         System.out.println(" ---------------------------");
15         System.out.println("星期日 星期一 星期二 星期三 星期四 星期五 星期六");
16 
17         SimpleDateFormat  simple = new SimpleDateFormat("yyyy-MM-dd");
18         Date date = null;
19         try {
20             date = simple.parse(str);
21         } catch (ParseException e) {
22             // TODO Auto-generated catch block
23             e.printStackTrace();
24         }
25          Calendar c = Calendar.getInstance();//日历当前时间,换成自定义时间
26         // c.clear();
27          c.setTime(date);
28 
29          int today = c.get(Calendar.DAY_OF_MONTH);    //获取当前天数
30 
31          c.set(Calendar.DAY_OF_MONTH, 1);  // 设置当前“天”为1号
32          int firstWeekday = c.get(Calendar.DAY_OF_WEEK); // 1号是周几?
33          int j = 1;
34             while(j < firstWeekday ) {
35                 System.out.printf("%4s", " ");
36                 j ++ ;
37             }
38          int last = c.getActualMaximum(Calendar.DAY_OF_MONTH);    //获取本月最大天数 
39 
40             for(int k = 1;k <= last;k++) {
41                    if(today == k){  // *号表示今天
42                         System.out.printf("%4s",("*"+k));
43                    }else{     
44                         System.out.printf("%4s", k);
45                    }
46                 if((j+k-1) % 7 == 0)
47                     System.out.println();
48 
49             }             
50     }
51 
52 }
图片

 

posted @ 2015-06-08 19:12  Pace千雨  阅读(528)  评论(0编辑  收藏  举报