62,614
社区成员
发帖
与我相关
我的任务
分享
package volume1.ch04.CalendatTest;
import java.util.*;
public class CalendarTest{
public static void main(String[] args){
//construct date
GregorianCalendar d = new GregorianCalendar();
int today = d.get(Calendar.DAY_OF_MONTH);
int month = d.get(Calendar.MONTH);
//set start day of month
d.set(Calendar.DAY_OF_MONTH, 1);
int weekday = d.get(Calendar.DAY_OF_WEEK);
System.out.println("Sun Mon Tue Wed Thu Fri Sat");
for(int i =Calendar.SUNDAY; i<weekday; i++){
System.out.print(" ");
}
do{
//print day
int day = d.get(Calendar.DAY_OF_MONTH);
if(day<10)System.out.print(" ");
System.out.print(day);
//mark current day
if(day == today )
System.out.print("* ");
else
System.out.print(" ");
//start a new line after every Sat
if(weekday == Calendar.SATURDAY)
System.out.println();
//advance d to the next day
d.add(Calendar.DAY_OF_MONTH, 1);
weekday = d.get(Calendar.DAY_OF_WEEK);
}while(d.get(Calendar.MONTH) == month);
//print final end of line if neccessary
if(weekday != Calendar.SUNDAY)
System.out.println();
}
}