Calendar类

简介: Calendar类 Calendar类介绍,获取成员的方式 /* java.util.Calendar类:日历类 Calendar类是一个抽象类,里面提供了很多操作日历字段的方法(YEAR\MONTH\DAY_OF_MONTH\HOUR) Calendar类无法直接创建对象使用,里边有一个静态方法叫

Calendar类


  • Calendar类介绍,获取成员的方式


/*
java.util.Calendar类:日历类
Calendar类是一个抽象类,里面提供了很多操作日历字段的方法(YEAR\MONTH\DAY_OF_MONTH\HOUR)
Calendar类无法直接创建对象使用,里边有一个静态方法叫getInstance(),该方法返回了Calendar类的子类对象
static Calendar getInstance() 使用默认时区和语言环境获得一个日历
 */
import java.util.Calendar;
public class Demo01Calendar {
    public static void main(String[] args) {
        Calendar c = Calendar.getInstance();//多态
        System.out.println(c);
    }
}


  • Calendar类的常用成员方法


/*
Calendar类的常用成员方法:
    public int get(int field):返回给定日历字段的值
    public void set(int field, int value):将给定的日历字段设置为给定值
    public abstract void add(int field, int amount):根据日历的规则,为给定的日历字段添加或减去指定的时间量
    public Date getTime():返回一个表示此Calendar时间值(从历元到现在的毫秒偏移量)的Date对象
成员方法的参数:
    int field:日历类的字段,可以使用Calendar类的静态成员变量获取
        public static final int YEAR = 1;   年
        public static final int MONTH = 2;   月
        public static final int DATE = 5;   月中的某一天
        public static final int DAY_OF_MONTH = 5;   月中的某一天
        public static final int HOUR = 10;   时
        public static final int MINUTE = 12;   分
        public static final int SECOND = 13;   秒
 */
import java.util.Calendar;
import java.util.Date;
public class Demo02Calendar {
    public static void main(String[] args) {
        demo01();
        demo02();
        demo03();
        demo04();
    }
    /*
    public Date getTime():返回一个表示此Calendar时间值(从历元到现在的毫秒偏移量)的Date对象
    把日历对象转换为日期对象
     */
    private static void demo04() {
        //使用getInstance方法获取Calendar对象
        Calendar c = Calendar.getInstance();
        Date date = c.getTime();
        System.out.println(date);
    }
    /*
    public abstract void add(int field, int amount):根据日历的规则,为给定的日历字段添加或减去指定的时间量
    把指定的字段增加/减少指定的值
    参数:
        int field:传递指定的日历字段(YEAR,MONTH...)
        int amount:增加/减少指定的值
            正数:增加
            负数:减少
     */
    private static void demo03() {
        //使用getInstance方法获取Calendar对象
        Calendar c = Calendar.getInstance();
        //把年增加2年
        c.add(Calendar.YEAR,2);
        //把月份减少3个月
        c.add(Calendar.MONTH,-3);
        int year = c.get(Calendar.YEAR);
        System.out.println(year);
        int month = c.get(Calendar.MONTH);
        System.out.println(month);//西方的月份0-11   东方:1-12
        //int date = c.get(Calendar.DAY_OF_MONTH);
        int date = c.get(Calendar.DATE);//这两种方式得到的结果相同
        System.out.println(date);
    }
    /*
    public void set(int field, int value):将给定的日历字段设置为给定值
    参数:
        int field:传递指定的日历字段(YEAR,MONTH...)
        int value:给指定字段设置的值,
     */
    private static void demo02() {
        //使用getInstance方法获取Calendar对象
        Calendar c = Calendar.getInstance();
        //设置年为9999
        c.set(Calendar.YEAR,9999);
        //设置月为9月
        c.set(Calendar.MONTH,9);
        //设置日为9日
        c.set(Calendar.DAY_OF_MONTH,9);
        //同时设置年月日,可以使用set的重载方法
        c.set(8888,8,8);
        int year = c.get(Calendar.YEAR);
        System.out.println(year);
        int month = c.get(Calendar.MONTH);
        System.out.println(month);//西方的月份0-11   东方:1-12
        //int date = c.get(Calendar.DAY_OF_MONTH);
        int date = c.get(Calendar.DATE);//这两种方式得到的结果相同
        System.out.println(date);
    }
    /*
    public int get(int field):返回给定日历字段的值
    参数:传递指定的日历字段(YEAR,MONTH...)
    返回值:日历字段代表的具体的值
     */
    private static void demo01() {
        //使用getInstance方法获取Calendar对象
        Calendar c = Calendar.getInstance();
        int year = c.get(Calendar.YEAR);
        System.out.println(year);
        int month = c.get(Calendar.MONTH);
        System.out.println(month);//西方的月份0-11   东方:1-12
        //int date = c.get(Calendar.DAY_OF_MONTH);
        int date = c.get(Calendar.DATE);//这两种方式得到的结果相同
        System.out.println(date);
    }
}


相关文章
|
7月前
|
Java 关系型数据库 MySQL
37、一篇文章学习 Java 中的日期相关类(Date 和 Calendar),非常常用
37、一篇文章学习 Java 中的日期相关类(Date 和 Calendar),非常常用
77 0
|
Java 关系型数据库 MySQL
Date和Calendar
Date和Calendar
126 0
Date类,DateFormat类,Calendar类
Date类,DateFormat类,Calendar类
85 0
|
Java
Java中Calendar类中月、星期、日 是否要加减1及其原因
Java中Calendar类中月、星期、日 是否要加减1及其原因
308 0
|
Java API 数据库
Java常用类(2)--日期时间相关类Date、Calendar、LocalDateTime、Instant全面
Java常用类(2)--日期时间相关类Date、Calendar、LocalDateTime、Instant全面
169 0
Java常用类(2)--日期时间相关类Date、Calendar、LocalDateTime、Instant全面
|
API
日期时间类(Date、DateFormat、Calendar)
日期时间类(Date、DateFormat、Calendar)
205 1
Calendar类你可能不知道的坑
Calendar类你可能不知道的坑
327 0
Calendar类你可能不知道的坑
|
Java
Java Date与Calendar类
Java Date与Calendar类
108 0