日期:2014-05-20  浏览次数:20727 次

日历问题!!!
编写一个程序,用于显示特定年份中某个月的日历,月和年应从命令行参数接受,如果用户没有输入月和

年,则应显示当前月和年的日历。
1   将月份名称和每个月的天数   储存在数组中
2   获取特定月份名称和最大天数
3   创建   GregorianCalendar类的实例
给我一点提示吧!!

------解决方案--------------------
int year=2004;
int month=10;
Calendar c = GregorianCalendar.getInstance();
c.set(Calendar.YEAR, year);//2004年
c.set(Calendar.MONTH, month-1);//10月
c.set(Calendar.DAY_OF_MONTH, 1);//1日
System.out.println(c.get(Calendar.YEAR)+ "年 "+(c.get(Calendar.MONTH)+1)+ "月 ");
System.out.println( "日 一 二 三 四 五 六 ");
int[][] day = new int[6][7];

while(c.get(Calendar.MONTH)+1==month){
int i=c.get(Calendar.WEEK_OF_MONTH)-1;
int j=c.get(Calendar.DAY_OF_WEEK)-1;
day[i][j] = c.get(Calendar.DAY_OF_MONTH);
c.add(Calendar.DATE, 1);
}
for(int i=0;i <6;i++){
for(int j=0;j <7;j++){
String out = day[i][j]+ " ";
if(out.equals( "0 "))out= " ";
if(out.length()==1)out= " "+out;
System.out.print(out+ "  ");
}

System.out.println();
}