9-2Java常用类----(2)JDK8之前日期时间API:java.util.Calendar(日历)类

本文介绍了Java 8之前日期时间API的核心类Calendar,包括如何获取实例、使用get和set方法获取和设置日期字段,以及add方法进行日期调整。此外,还展示了如何将Calendar转换为Date对象以及反之。示例代码演示了Calendar的基本操作,如获取当前月份天数、修改日期并打印结果。
摘要由CSDN通过智能技术生成

JDK8之前日期时间API:java.util.Calendar(日历)类

  1. Calendar是一个抽象基类,主用用于完成日期字段之间相互操作的功能。
  2. 获取Calendar实例的方法
     (1)使用Calendar.getInstance()方法
     (2)调用它的子类GregorianCalendar的构造器。
  3. 一个Calendar的实例是系统时间的抽象表示,通过get(int field)方法来取得想要的时间信息。比如YEAR、MONTH、DAY_OF_WEEK、HOUR_OF_DAY 、MINUTE、SECOND
    (1) public void set(int field,int value)
    (2) public void add(int field,int amount)
    (3) public final Date getTime()
    (4) public final void setTime(Date date) 
  4. 注意:
    (1) 获取月份时:一月是0,二月是1,以此类推,12月是11
    (2) 获取星期时:周日是1,周一是2 , 。。。。周六是7

代码:

package java1;

import org.junit.Test;

import java.util.Calendar;
import java.util.Date;

public class DateTimeTest1 {
    @Test
    public void testCalendar() {
        //1.实例化
        //方式一:创建其子类(GregorianCalendar)的对象
        //方式二:调用其静态方法getInstance()
        Calendar calendar = Calendar.getInstance();
//        System.out.println(calendar.getClass());

        //2.常用方法
        //get()
        int days = calendar.get(Calendar.DAY_OF_MONTH);
        System.out.println(days);
        System.out.println(calendar.get(Calendar.DAY_OF_YEAR));

        //set()
        //calendar可变性
        calendar.set(Calendar.DAY_OF_MONTH, 22);
        days = calendar.get(Calendar.DAY_OF_MONTH);
        System.out.println(days);

        //add()
        calendar.add(Calendar.DAY_OF_MONTH, -3);
        days = calendar.get(Calendar.DAY_OF_MONTH);
        System.out.println(days);

        //getTime():日历类---> Date
        Date date = calendar.getTime();
        System.out.println(date);
 
        //setTime():Date ---> 日历类
        Date date1 = new Date();
        calendar.setTime(date1);
        days = calendar.get(Calendar.DAY_OF_MONTH);
        System.out.println(days);
    }
}

输出:

8
39
22
19
Fri Feb 19 10:35:19 CST 2021
8
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YY鸟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值