?? monthmaker.java~1~
字號:
/**
* [MonthMaker.java]
*
* 月份表算法類
*
* 創建日期:(2003-10-25)
* @author:ONE_Fox
* @author:ONE_Fox@163.com
*/
package datechooser;
import java.util.Calendar;
class MonthMaker {
private static Calendar maker = null;
/**
* (隱藏)構造函數,本類無需創建實例
*/
private MonthMaker () {}
//----------------------------------------------------------------//
/**
* 方法:計算月份表
*
* @param showMonth java.util.Calendar
*
* @retuen String[][]
*/
public static String[][] makeMonth(Calendar showMonth) {
maker = showMonth; //更新 maker
int dayCount = 1; //天數計數器
//保存月歷表的數組----------------//
String[][] date = new String[6][7];
for(int f = 0; f < 6; f++) //填充初始數據
java.util.Arrays.fill(date[f], "");
maker.set(Calendar.DATE, dayCount);
//制作月份表第 1 行---------------//
for(int i = maker.get(Calendar.DAY_OF_WEEK) -1; i < 7; i++) {
date[0][i] = "" + dayCount;
dayCount++;
}
//制作月份表 2~4 行--------------//
for(int i = 1; i < 4; i++) {
for(int j = 0; j < 7; j++) {
date[i][j] = "" + dayCount;
dayCount++;
}
}
//制作月份表第 5 行---------------//
for(int i = dayCount, j = 0;
i <= maker.getActualMaximum(Calendar.DAY_OF_MONTH) && j < 7;
i++,j++) {
maker.set(Calendar.DATE, i);
date[4][maker.get(Calendar.DAY_OF_WEEK)-1] = "" + dayCount;
dayCount++;
}
//制作月份表第 6 行--------------//
for(int i = dayCount; i <= maker.getActualMaximum(
Calendar.DAY_OF_MONTH); i++) {
maker.set(Calendar.DATE, i);
date[5][maker.get(Calendar.DAY_OF_WEEK)-1] = "" + dayCount;
dayCount++;
}
return date;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -