用JAVA做日历

《JAVA程序设计实训》 要求:设计一个日历本,要求:给出提示:输入2000-2010年间任意的年份和月份,根据年月,打印出某一月份的日历。要求:1. 语法正确,符合JAVA编程风格。2. 上交:实训报告、源程序、运行结果截图。 附(参考):运行结果: 请输入要查询的年份:2009请输入月份:10(则结果输出为:) 2009年10月日历Sun Mon Tue Wed Thu Fri Sat (也可用中文表示) 1 2 34 5 6 7 8 9 1011 12 13 14 15 16 1718 19 20 21 22 23 2425 26 27 28 29 30 31

import java.util.*;

public class test {
public static void main( String[] args ) {
String[] wd= { "日", "一", "二", "三", "四", "五", "六" };
Scanner s = new Scanner(System.in);
P("请输入要查询的年份:");
int y = s.nextInt();
P("请输入月份:");
int m = s.nextInt();
if(y < 2000 || y > 2010) {
P("不在查询范围之内!");
return;
}

GregorianCalendar g = new GregorianCalendar( y, m-1, 1 );

P( "\n星期\t" );
for ( int j = 0; j < wd.length; ++j )
P( wd[j] + "\t" );
P();
for ( int j = 0; j < g.get( Calendar.DAY_OF_WEEK ); ++j )
P( "\t" );
int thisMonth = g.get( Calendar.MONTH );
for ( int j = 1; j <= 31; ++j ) {
int d = g.get( Calendar.DAY_OF_MONTH );
P( d + "\t" );
if ( g.get( Calendar.DAY_OF_WEEK ) == 7 ) {
P("\n\t");
}
g.add( Calendar.DAY_OF_YEAR, 1 );
if ( g.get( Calendar.MONDAY ) != thisMonth ) {
P("\n\n");
break;
}
}
}

static void P( String s )
{
System.out.print( s );
}
static void P()
{
System.out.println();
}
}
温馨提示:答案为网友推荐,仅供参考