日志文章

2019-12-18 aflfte2011

可视化日历写法1

package com.aflfte.test;

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;

/**
 * 可视化日历制做
 * @author root
 *
 */
public class TestCalendar2 {
    public static void main(String[] args) throws ParseException {
        Scanner sca=new Scanner(System.in);
        System.out.println("请输入日期:(如2019-01-01)");
        String c=sca.nextLine();
        DateFormat df=new SimpleDateFormat("yyyy-MM-dd");
        Date day=df.parse(c);
        Calendar ca=new GregorianCalendar();
        ca.setTime(day);
        int t=ca.get(Calendar.DATE);
        int m=ca.get(Calendar.MONTH);
        System.out.println("您输入的是:"+c);
        System.out.println("日\t一\t二\t三\t四\t五\t六");
        ca.set(Calendar.DATE, 1);
        int w=ca.get(Calendar.DAY_OF_WEEK);
        
        //System.out.println(w);
        for(int j=1;j<=w-1;j++) {
            System.out.print(" \t");
        }
        for(int i=1;i<=31;i++) {
            if(ca.get(Calendar.MONTH)!=m) {
                break;
            }
            if(ca.get(Calendar.DATE)==t) {
            System.out.print(ca.get(Calendar.DATE)+"*\t");
            ca.add(Calendar.DATE, 1);
            }else {
                System.out.print(ca.get(Calendar.DATE)+"\t");
                ca.add(Calendar.DATE, 1);
            }
            if((i+w-1)%7==0) {
                System.out.println();
            }
        }
    }
}

« 可视化日历写法2 | 日历类的使用方式»