java 输出日历,java日历,2012年2月周 星期
分享于 点击 28720 次 点评:2
java 输出日历,java日历,2012年2月周 星期
2012年2月
周 星期天 星期一 星期二 星期三 星期四 星期五 星期六
5周 1月29日 1月30日 1月31日 2月1日 2月2日 2月3日 2月4日
6周 2月5日 2月6日 2月7日 2月8日 2月9日 2月10日 2月11日
7周 2月12日 2月13日 2月14日 2月15日 2月16日 2月17日 2月18日
8周 2月19日 2月20日 2月21日 2月22日 2月23日 2月24日 2月25日
9周 2月26日 2月27日 2月28日 2月29日 3月1日 3月2日 3月3日
package com.ebocy.redmine;import java.util.Calendar;public class Test { public static void main(String[] args) { int year = 2012; int month = 1; int[][] cal = getCalendar(year, month); System.out.println("\\t\\t\\t" + year + "年" + (month + 1) + "月"); System.out.println("周\\t星期天\\t星期一\\t星期二\\t星期三\\t星期四\\t星期五\\t星期六"); for (int j = 0; j < cal.length; j++) { int[] week = cal[j]; int z = week[0]; System.out.print(z + "周\\t"); for (int i = 0; i < week.length - 1; i++) { // 第一周 if (z == 1) { int d = week[i + 1]; // 去年日期 if (d > 7) { System.out.print("12月" + d + "日\\t"); } else { System.out.print((month + 1) + "月" + d + "日\\t"); } } else { int d = week[i + 1]; // 下月日期 if (j == 4 && d < 7) { System.out.print((month + 2) + "月" + d + "日\\t"); // 上月日期 } else if (j == 0 && d > 20) { System.out.print((month) + "月" + d + "日\\t"); } else { System.out.print((month + 1) + "月" + d + "日\\t"); } } } System.out.println(); } } public static int[][] getCalendar(int year, int month) { int[][] cal = new int[5][8]; Calendar calendar = Calendar.getInstance(); calendar.set(year, month, 1); for (int i = 0; i < 5; i++) { int[] days = new int[8]; days[0] = calendar.get(Calendar.WEEK_OF_YEAR); int week = calendar.get(Calendar.DAY_OF_WEEK); for (int j = 1; j < days.length; j++) { if (j >= week) { days[j] = calendar.get(Calendar.DAY_OF_MONTH); calendar.add(Calendar.DAY_OF_MONTH, 1); } else { Calendar temp = (Calendar) calendar.clone(); temp.add(Calendar.DAY_OF_MONTH, -(week - j)); days[j] = temp.get(Calendar.DAY_OF_MONTH); } } cal[i] = days; } return cal; }}//该片段来自于http://byrx.net
用户点评