public static void printCalendar (int year, int month) {
Calendar ca = Calendar.getInstance();
TimeZone tz = ca.getTimeZone();
System.out.println();
System.out.print(tz.getDisplayName()+"\t\t");
System.out.println(year+"年"+month+"月");
System.out.println();
ca.set(ca.YEAR, year);
ca.set(ca.MONTH, month-1);
//一个星期最大值为7,代表着星期六
int maxDayOfWeek = ca.getMaximum(Calendar.DAY_OF_WEEK);
//一个星期最小值为1,代表着星期一
int minDayOfWeek = ca.getMinimum(Calendar.DAY_OF_WEEK);
int max = ca.getMaximum(Calendar.DAY_OF_MONTH);
System.out.println("一\t二\t三\t四\t五\t六\t日");
for (int i = 0; i<max; i++ ) {
ca.set(Calendar.DAY_OF_MONTH, i+1);
int week = ca.get(Calendar.DAY_OF_WEEK)-1;
if (week==0) {
week = 7;
}
StringBuilder sb = new StringBuilder();
int day = ca.get(Calendar.DAY_OF_MONTH);
for (int j=1;j<week&&day==1;j++) {
sb.append(" \t");
}
if (week!=1 && week!=7 && day>1 ) {
sb.append(" \t").append(day);
}else if(week == 7){
if (day == 1) {
sb.append(day).append("\r\n");
}else {
sb.append(" \t").append(day).append("\r\n");
}
}else {
sb.append(day);
}
System.out.print(sb.toString());
}
}
Java指定年月打印日历
猜你喜欢
转载自blog.csdn.net/aa80303857/article/details/88748489
今日推荐
周排行