java中Calendar日历类型常见方法

🍋前言🍋
本片文章,主要在于了解Calendar类,及对它常用方法的运用

🍎欢迎点赞 👍 收藏 ⭐留言评论 📝

(一).Calendar类

是一个抽象类,在Date类后出现的,替换掉了很多Date类中的方法

创建 Calendar 对象不能使用 new 关键字,因为 Calendar 类是一个抽象类,但是它提供了一个 getInstance() 方法来获得 Calendar类的对象。getInstance() 方法返回一个 Calendar 对象,其日历字段已由当前日期和时间初始化。

1.简介:

Calendar类是Java.util包中提供的一个抽象类,该类从JDK1.1开始出现,作为Date类的替代方案,Calendar类中包含了对不同国家地区日历的处理,Calendar类常见的子类为:java.util.GregorianCanlendar;获取Calendar对象一般使用类中提供的静态方法:getInstance(),该方法返回了Calendar的子类对象

Calendar c = Calendar.getInstance();//默认是当前日期

  另外Calendar类是抽象类无法实例化,但是它有实现类所以可以通过创建子类初始化Calendar对象

创建一个代表2023年11月24日的Calendar对象
Calendar c1= new GregorianCalendar(2023, 11, 24);

2.获取方式

由于Calendar类是一个抽象类,语言敏感性,Calendar类并不是直接创建对象来获取时间属性值,而是通过静态方法创建,返回子类对象。

(二).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 YARN = 1; //年
public static final int MOUTH = 2; //月
public static final int DATE = 5;//月中的某一天(与day_of_mouth意义相同)
public static final int DAY_OF_MONTH;//月中的第几天(与date意义相同)
public static final int HOUR = 10; //时
public static final int MINUTE= 12;//分
public static final int SECOND= 13;//秒

Calendar类常用方法代码演示

1、根据日历规则,为指定的日历字段添加或者减去指定的事件量

//获取日历的当前实例
Calendar calendar=Calendar.getInstance();
//把当前的月份增加两个月
calendar.add(Calendar.MONTH,2);
//把当前的年份减少两年
calendar.add(Calendar.YEAR,2);
//获取更改后的年份和月份
int year=calendar.get(Calendar.YEAR);
int month=calendar.get(Calendar.MONTH);
System.out.println(year+"-"+month);

2、获取一个Calendar日历对象对应的Date日期对象

//获取一个Calendar日历对象对应的Date日期对象
public static void demo(Calendar calendar){

//把日历对象转化成日期对象
Date date=calendar.getTime();
System.out.println(date);//Thu Nov 23 20:51:05 CST 2023

//获取当前时间的时区
long timeMile=calendar.getTimeInMillis();
System.out.println("这是calendar日历对应的毫秒值:"+timeMile);

//获取System的毫秒值
long timeSystemMilli=System.currentTimeMillis();
System.out.println("这是System日历对应的毫秒值:"+timeSystemMilli);

//获取Date的毫秒值
Date date1=new Date();
long time= date.getTime();
System.out.println("这是date日历对应的毫秒值");
}

(三).Calendar类对象字段类型

Calendar类中用以下这些常量表示不同的意义,jdk内的很多类其实都是采用的这种思想

常量描述
Calendar.YEAR年份
Calendar.MONTH月份
Calendar.DATE日期
Calendar.DAY_OF_MONTH日期,和上面的字段意义完全相同
Calendar.HOUR12小时制的小时
Calendar.HOUR_OF_DAY24小时制的小时
Calendar.MINUTE分钟
Calendar.SECOND
Calendar.DAY_OF_WEEK星期几

4

🍋最后🍋

总结不易,希望小宝们不要嫌弃哦!😀

  • 13
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值