遍写个应用程序,输出某年某月的日历页,通过main方法的参数将年份和月份时间传递到程序中`

来源:百度知道 编辑:UC知道 时间:2024/05/12 12:51:17
import java.util.*;
class Text
{
public static void main(String args[])
{
System.out.printf("%4c%4c%4c%4c%4c%4c%4c\n",'日','一','二','三','四','五','六');
Calendar 日历=Calendar.getInstance();
日历.set(2005,9,1);
int 星期几=日历.get(Calendar.DAY_OF_WEEK)-1;
int a[]=new int[星期几+31];
for(int i=0;i<星期几;i++)
{
a[i]=0;
}
for(int i=星期几,n=1;i<星期几+31;i++)
{
a[i]=n;
n++;
}
for(int i=0;i<a.length;i++)
{
if(i%7==0&&i!=0)
System.out.printf("\n");
System.out.printf("%5d",a[i]);
}

}
}
这个有什么缺陷?

你的是伪代码么?我也不一个一个挑问题了,直接给个JAVA编译通过的代码你自己看看吧

package com.sooinn.tools.calendar;

import java.util.*;

public class CalendarPro {

/**
* @param int year, int month
*/
public static String getCalendar( int year, int month ) {

month = month - 1;
int day = 1;
String returnValue = null;

Calendar calendar = Calendar.getInstance();
calendar.setFirstDayOfWeek(Calendar.SUNDAY);

calendar.set( year, month, day);

returnValue = "日 一 二 三 四 五 六";

int week = calendar.get(Calendar.DAY_OF_WEEK) - 1;

int days = 0;
switch (month) {
case Calendar.JANUARY:
case Calendar.MARCH:
case Calendar.MAY:
case Calendar.JULY:
case Calendar.AUGUST: