栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java的日历类Calendar使用

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java的日历类Calendar使用

简单介绍

Calendar类是一个抽象类public abstract class Calendar implements Serializable, Cloneable, Comparable,它为特定时间与一组诸如YEAR、MONTH、DAY_OF_MONTH、HOUR等日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。就是可以利用它来获得自己想要的时间,可以是指定的过去的时间,也可以是将来的时间,或者是经过计算之后的时间。总之就是用来获取时间的。

用get方法获取时间
        //获取calendar对象
        Calendar instance = Calendar.getInstance();
        //用get方法获取时间
        int year = instance.get(Calendar.YEAR);
        System.out.println("year:" + year);
        //这时是返回的是一个数字,对应的是Calendar的月份常数。一月是0,二月是1····十二月是11,依次类推
        int mouth = instance.get(Calendar.MONTH) + 1;
        System.out.println("mouth:" + mouth);
        获取当前天数
        int date = instance.get(Calendar.DATE);
        System.out.println("date:" + date);
        int dayOfMonth = instance.get(Calendar.DAY_OF_MONTH);
        System.out.println("dayOfMonth:" + dayOfMonth);
        //当前月最大天数
        int maximum = instance.getActualMaximum(Calendar.DATE);
        System.out.println("maximun:" + maximum);
        //当前月最小天数
        int actualMinimum = instance.getActualMinimum(Calendar.DATE);
        System.out.println("actualMinimum:" + actualMinimum);
        //获取当前处于一天中的第几个小时,
        int hourOfDay = instance.get(Calendar.HOUR_OF_DAY);
        System.out.println("hourOfDay:" + hourOfDay);
        //获取当前分钟数
        int minute = instance.get(Calendar.MINUTE);
        System.out.println("minute:" + minute);
        //获取当前秒数
        int second = instance.get(Calendar.SECOND);
        System.out.println("second:" + second);
        //星期(Locale.ENGLISH情况下,周日是1,周一2,周二3,周三4,周四5,周五6,周六7)
        int dayOfWeek = instance.get(Calendar.DAY_OF_WEEK)-1;
        System.out.println("dayOfWeek:" + dayOfWeek);

        //如果需要将获得到的时间格式化输出,则需要使用SimpleDateFormart 模式为yyyy-MM-dd HH:mm:ss
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Date now = instance.getTime();
        System.out.println("格式化时间:" + sdf.format(now));

执行结果:

用set方法来设置时间
        //设置时间之后用getTime()得到时间 例如:
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

        //使用set()方法来进行设置指定时间
        Calendar cal=Calendar.getInstance();
        cal.set(2020, 3, 3, 13, 44, 51);//年月日时分秒(月份0代表1月)
        System.out.println("打印时间-1:"+format.format(cal.getTime()));

        cal.set(Calendar.YEAR, 2014);//年
        cal.set(Calendar.MONTH, 7);//月(月份0代表1月)
        cal.set(Calendar.DATE, 11);//日
        cal.set(Calendar.HOUR_OF_DAY, 15);//时
        cal.set(Calendar.MINUTE, 3);//分
        cal.set(Calendar.SECOND, 32);//秒
        System.out.println("打印时间-2:"+format.format(cal.getTime()));

执行结果:

使用add方法对时间进行设置
        Calendar cal=Calendar.getInstance();
        //设置时间之后用getTime()得到时间 例如:
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        System.out.println("打印当前时间:"+format.format(cal.getTime()));
        //使用add()方法对时间进行运算
        cal.add(Calendar.YEAR, 1);//给当前年份加1年,-1就是减一年
        cal.add(Calendar.MONTH, 1);//给当前月加1月
        cal.add(Calendar.DATE, 1);//当前时间+1
        cal.add(Calendar.HOUR_OF_DAY, -1);//当前小时-1
        cal.add(Calendar.MINUTE, 1);//分
        cal.add(Calendar.SECOND, 1);//秒
        cal.add(Calendar.DATE, 7);//周
        System.out.println("打印变更后时间:"+format.format(cal.getTime()));

执行结果:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/915536.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号