java常用类之日历类Calendar

1、概述

    java.util.Calendar,日历类,抽象类。可以进行获取当前日期,进行日期运算。

    进行日期运算可以使用子类 java.util.GregorianCalendar【不常用】,也可以使用其静态方法 public Calendar getInstance()获取Calendar的子类对象【常用】。

2、常用方法

2.1 public Calendar getInstance():获取日历实例

2.2 getTime():获取当前日期

举例:通过日历查询当前日期

public static void main(String[] args) {
    Calendar calendar = Calendar.getInstance();
    System.out.println(calendar); //输出当前calendar内存存储内容
    Date date = calendar.getTime();
    System.out.println(date); //输出当前日期时间
}

运行结果:

java.util.GregorianCalendar[...] //括号内为当前calend详细内容
Tue Jul 31 17:49:36 CST 2018

2.3 get (int field):获取某个字段的值

举例:通过日历获取当前年月日时分秒

public static void main(String[] args) {
    Calendar calendar = Calendar.getInstance();
    int year = calendar.get(Calendar.YEAR);
    int month = calendar.get(Calendar.MONTH)+1;
    int day = calendar.get(Calendar.DAY_OF_MONTH);
    int hour = calendar.get(Calendar.HOUR);
    int minute = calendar.get(Calendar.MINUTE);
    int second = calendar.get(Calendar.SECOND);
    System.out.println(year + "年" + month + "月" + day + "日    " + hour + ":" + minute + ":" + second);
    String[] weekStr = {"星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
    int weekday = calendar.get(Calendar.DAY_OF_WEEK);//1--7
    System.out.println(weekStr[weekday-1]);
}

运行结果:

2018年7月31日    5:42:46
星期二

2.4 set(int field,int value):为字段field,设置为指定的value值,整个Calendar都会发生改变。

举例:将年份改为2019

public static void main(String[] args) {
    Calendar calendar = Calendar.getInstance();
    int now = calendar.get(Calendar.YEAR);
    System.out.println("now"+now);
    calendar.set(Calendar.YEAR,2019);
    int then = calendar.get(Calendar.YEAR);
    System.out.println("then"+then);
}

运行结果:

now2018
then2019

2.5 add(int field,int value):将字段field增加指定的value值,整个Calendar都会发生改变

举例:今年是2018,将年份改为2019

public static void main(String[] args) {
    Calendar calendar = Calendar.getInstance();
    int now = calendar.get(Calendar.YEAR);
    System.out.println("now" + now);
    calendar.add(Calendar.YEAR, 1);
    int then = calendar.get(Calendar.YEAR);
    System.out.println("then" + then);
}
发布了16 篇原创文章 · 获赞 0 · 访问量 2175

猜你喜欢

转载自blog.csdn.net/ShaSha27/article/details/81295936