java 显示每个月的日历
java 显示每个月的日历 ,开发工具eclipse
操作方法
- 01
public class calendarTool { public static void main(String[] args) throws ParseException { SimpleDateFormat sf=new SimpleDateFormat("yyyy-MM"); System.err.println("请输入查询月份"); Scanner sc=new Scanner(System.in); //键盘输入 String dateValue=sc.next(); Date date=sf.parse(dateValue); System.err.println(sf.format(date)); if(sc!=null){ sc.close(); } getDate(date); } public static void getDate(Date nowDate){ Calendar cad=Calendar.getInstance(); cad.setTime(nowDate); int day_month=cad.getActualMaximum(Calendar.DAY_OF_MONTH); //获取当月天数 int[][] array=new int[6][7]; for(int i=0;i<=day_month-1;i++){ //循环遍历每天 cad.set(Calendar.DAY_OF_MONTH,i+1); int week_month=cad.get(Calendar.WEEK_OF_MONTH); //获取改天在本月的第几个星期,也就是第几行 int now_day_month=cad.get(Calendar.DAY_OF_WEEK); //获取该天在本星期的第几天 ,也就是第几列 array[week_month-1][now_day_month-1]=i+1; //将改天存放到二位数组中 } String[] weeks = { "日", "一", "二", "三", "四", "五", "六" }; for(String w:weeks){ System.err.print(w+"\t"); } System.err.println(); for(int i=0;i<=array.length-1;i++){ for(int j=0;j<=array[i].length-1;j++){ if(array[i][j]!=0){ //没有存放的数字默认为0,过滤 System.err.print(array[i][j]); } System.err.print("\t"); if((j+1)%7==0){ System.err.println(); } } } }