应用键盘输入日期,输入当月日历

public static void main(String[] args) {        Scanner sc = new Scanner(System.in);        System.out.println("请输出日期,比方:2021-06-18");        String strDate = sc.next();//接管用户输出的日期        //System.out.println("日期是:" + strDate);//输入日期        System.out.println("日\t一\t二\t三\t四\t五\t六");        java.sql.Date date = java.sql.Date.valueOf(strDate);//将字符串日期strDate转换成java.sql.Date        Calendar calendar = Calendar.getInstance();//申明日历类,形式一        //Calendar calendar = new GregorianCalendar();//申明日历类,形式二        calendar.setTime(date);//设置日期        //System.out.println(calendar);        int maxDate = calendar.getActualMaximum(Calendar.DATE);//获取当月最大天数,比方6月有30天,7月有31天        int day = calendar.get(Calendar.DATE);//获取以后日        calendar.set(Calendar.DATE, 1);//设置以后日为1号        int num = calendar.get(Calendar.DAY_OF_WEEK);//获取1号是一周中的第几天,比方周日是一周中的第1天        int count = num - 1;//计数器,每7天输入换行,包含输入的空区域num-1        for (int i = 1; i < num; i++) {            //输出num个空区域,比方1号是第一周的中的第3天,则1号是周二,后面应该输入2个空区域            System.out.print("\t");        }        for (int i = 1; i <= maxDate; i++) {            if (day == i) {//如果是以后日,则用*标注                System.out.print(i + "*\t");            } else {                System.out.print(i + "\t");            }            count++;            if (count % 7 == 0) {                //count计数器,每7个换行                System.out.println();            }        }    }

输入后果

请输出日期,比方:2021-06-182021-07-18日    一    二    三    四    五    六                1    2    3    4    5    6    7    8    9    10    11    12    13    14    15    16    17    18*    19    20    21    22    23    24    25    26    27    28    29    30    31