小项目---java编写的用年份和月份查询日历的类

来源:互联网 发布:淘宝卖家留言在哪里 编辑:程序博客网 时间:2024/05/21 20:23
package practice;import java.util.Calendar;import java.util.Scanner;import java.util.TimeZone;/** * Created by fangjiejie on 2016/11/27. */public class Mydate {    public static final int dayNum[]={31,28,31,30,31,30,31,31,30,31,30,31};    static boolean judgeYear(int year){//判断是否为闰年,是闰年2月为29天        if((year%400==0)||((year%4==0)&&(year%100!=0))){return true;}        else{return false;}    }    static void show(int year,int month,Calendar calendar){        if(judgeYear(year)){            dayNum[1]=29;        }        int count=dayNum[month];//记录当前月份的总天数        calendar.set(Calendar.YEAR,year);        calendar.set(Calendar.MONTH,month);        calendar.set(Calendar.DAY_OF_MONTH,1);        System.out.println(calendar.getTime());        int p=calendar.get(Calendar.DAY_OF_WEEK);//计算当前月份的第一天是一周的第几天                                                   //这个结果是以星期天为第一天算出来的,        for(int i=0;i<p-1;i++)//空出来的天数用空格补齐        {            System.out.print("       ");        }        int c=1;//c表示当前月份的某天,从1号开始        while(c<=count){            p++;//用p 来控制换行            System.out.print(c+"     ");            if(c<10){                System.out.print(" ");//为了格式对齐,一位数字的天数多输出空格            }            if(p%7==1){                System.out.println();            }            c++;        }    }    public static void main(String[] args) {        Calendar Md=Calendar.getInstance();        Md.setTimeZone(TimeZone.getTimeZone("GMT+8"));        int year=Md.get(Calendar.YEAR);        int month=Md.get(Calendar.MONTH);        show(year,month,Md);        while(true) {            System.out.println();            System.out.println("如果想继续查找某年某月的日历,那么");            Scanner reader = new Scanner(System.in);            System.out.println("请输入年份:");            year = reader.nextInt();            System.out.println("请输入月份:");            month = reader.nextInt();            show(year, month - 1, Md);        }    }}
/*****格式化日期的类*****/public class FF {    public static void main(String[] args) {        System.out.println(new Date());        SimpleDateFormat l= new SimpleDateFormat("yyyy-MM-dd HH:mm;ss");//设定格式模板        System.out.println(l.format(new Date()));        Calendar c=Calendar.getInstance();//不需要实例化 静态方法创建        c.setTimeZone(TimeZone.getTimeZone("GMT+8"));        System.out.println(c.get(Calendar.YEAR));        System.out.println((c.get(Calendar.MONTH))+1);        System.out.println(c.get(Calendar.DAY_OF_MONTH));        System.out.println(c.get(Calendar.HOUR_OF_DAY));        System.out.println(c.get(Calendar.MINUTE));        System.out.println(c.get(Calendar.SECOND));        c.set(Calendar.YEAR,2016);//设定日历字段的值。        c.add(Calendar.YEAR,5);//根据日历的规则,为给定的日历字段添加或减去指定的时间量。        System.out.println(c.get(Calendar.YEAR));//返回日历字段的值。        Date m=c.getTime();//返回一个表示此 Calendar 时间值(从历元至现在的毫秒偏移量)的 Date 对象。        System.out.println(l.format(m));        Calendar d=Calendar.getInstance();        d.set(Calendar.YEAR,2004);        d.set(Calendar.MONTH,2);        int k=c.getTime().getDay();    }}
0 0
原创粉丝点击