/**
* 程序運行當年的日歷,程序運行當日以*號表示
*/
import java.util.*;
public class CalendarTest {
public static void main(String[] args) {
GregorianCalendar d = new GregorianCalendar();
int year = d.get(Calendar.YEAR);
int month = d.get(Calendar.MONTH);
int today = d.get(Calendar.DAY_OF_YEAR);
d.set(d.get(Calendar.YEAR),0,1); //設置為當年1月1日(0表示1月)
do {
System.out.println(d.get(Calendar.MONTH) + 1 + "月");
System.out.println("Sun Mon Tue Wed Thu Fri Sat"); //輸出月表頭
month = d.get(Calendar.MONTH); //取得月份
int weekday = d.get(Calendar.DAY_OF_WEEK); //獲得當月1號,在一周中是星期幾
for(int i = Calendar.SUNDAY; i < weekday; i++)//控制當月1號的起始位置
System.out.print(" ");
do {
weekday = d.get(Calendar.DAY_OF_WEEK);
if (d.get(Calendar.DAY_OF_MONTH) < 10) //如果日期小于10,多輸出一個空格,以便對齊
System.out.print(" ");
System.out.print(d.get(Calendar.DAY_OF_MONTH));//輸出日期
if (today == d.get(Calendar.DAY_OF_YEAR)) //如果是當日,則輸出一個*號
System.out.print("* ");
else
System.out.print(" ");
if (weekday == Calendar.SATURDAY) //到達周六,則換行
System.out.println();
d.add(Calendar.DAY_OF_YEAR,1); //日期累加
} while (d.get(Calendar.MONTH) == month); //如果還是當月,繼續循環
System.out.println("\n");
} while (d.get(Calendar.YEAR) == year); //如果還是當年,繼續循環
}
}
posted on 2006-07-22 17:17
wqwqwqwqwq 閱讀(366)
評論(0) 編輯 收藏 所屬分類:
Simple Java