可视化的小日历

可视化的小日历

直接上代码

package user;
/**
 * author: @sun
 */
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Scanner;

public class VisualCalendar {
    public static void main(String[] args) {
        System.out.println("请输入日期(按格式:2019-5-6):");
        Scanner  scanner=new Scanner(System.in); 
        String temp=scanner.nextLine();           
        DateFormat dateformat=new SimpleDateFormat("yyyy-MM-dd");
        try {
            Date d= dateformat.parse(temp);     
            Calendar calendar=new GregorianCalendar();
            calendar.setTime(d);
            int day=calendar.get(Calendar.DATE);   
            calendar.set(Calendar.DATE, 1);    
            int MaxDay=calendar.getActualMaximum(Calendar.DATE);        
            System.out.println("日	一	二	三	四	五	六");
            for(int i=1;i<calendar.get(Calendar.DAY_OF_WEEK);i++) {   
                System.out.print("	");
            }
            
            for(int i=1;i<=MaxDay;i++) {
                if(i==day) {
                    System.out.print("*");             
                }
                System.out.print(i+"	");
                int w=calendar.get(Calendar.DAY_OF_WEEK); 
                if(w==Calendar.SATURDAY) {               
                    System.out.print("
");
                }
                calendar.add(Calendar.DATE, 1);       
            }
            
        } catch (ParseException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
    }
}

打印结果:

详解请看上一篇博客

原文地址:https://www.cnblogs.com/ssxblog/p/11210021.html