zl程序教程

您现在的位置是:首页 >  后端

当前栏目

JAVA常见类(十二)Calendar类

JAVA 常见 十二 calendar
2023-06-13 09:14:52 时间

大家好,又见面了,我是你们的朋友全栈君。

Calendar类

Calendar:它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。

一、构造方法

protected Calendar() :由于修饰符是protected,所以无法直接创建该对象。需要通过别的途径生成该对象。

二、成员方法

static Calendar getInstance()

使用默认时区和区域设置获取日历。通过该方法生成Calendar对象。如下所示:Calendar cr=Calendar.getInstance();

public void set(int year,int month,int date,int hourofday,int minute,int second)

设置日历的年、月、日、时、分、秒。

public int get(int field)

返回给定日历字段的值。所谓字段就是年、月、日等等。

public void setTime(Date date)

使用给定的Date设置此日历的时间。Date——Calendar

public Date getTime()

返回一个Date表示此日历的时间。Calendar—–Date

abstract void add(int field,int amount)

按照日历的规则,给指定字段添加或减少时间量。

public long getTimeInMillies()

以毫秒为单位返回该日历的时间值。

三、日历字段

日历字段包含以下两种:一种是表示时间的单位,例如年、月、日等等。另一种是具体的日期,例如一月、二月、三月、一日、二日、三日、一点钟、两点钟等等具体的时间。前一种一般时获取的时候使用,后一种一般判断的时候使用。

时间单位字段:

YEAR

MINUTE

DAY_OF_WEEK_IN_MONTH

某月中第几周

MONTH

SECOND/MILLISECOND

秒/毫秒

WEEK_OF_MONTH

日历式的第几周

DATE

DAY_OF_MONTH

和DATE一样

DAY_OF_YEAR

一年的第多少天

HOUR_OF_DAY

DAY_OF_WEEK

周几

WEEK_OF_YEAR

一年的第多少周

具体时间字段:这里就不累赘了,从一月到十二月、从周一到周五

特殊的:AM_PM 返回1则表示是下午,返回0表示上午。

四、例子

public class CalendarDemo {
	public static void main(String[] args) {
		// 其日历字段已由当前日期和时间初始化:
		Calendar rightNow = Calendar.getInstance(); // 子类对象
		// 获取年
		int year = rightNow.get(Calendar.YEAR);
		// 获取月
		int month = rightNow.get(Calendar.MONTH);
		// 获取日
		int date = rightNow.get(Calendar.DATE);
		//获取几点
		int hour=rightNow.get(Calendar.HOUR_OF_DAY);
		//获取上午下午
		int moa=rightNow.get(Calendar.AM_PM);
		if(moa==1)
			System.out.println("下午");
		else
			System.out.println("上午");

		System.out.println(year + "年" + (month + 1) + "月" + date + "日"+hour+"时");
		rightNow.add(Calendar.YEAR,5);
		rightNow.add(Calendar.DATE, -10);
		int year1 = rightNow.get(Calendar.YEAR);
		int date1 = rightNow.get(Calendar.DATE);
		System.out.println(year1 + "年" + (month + 1) + "月" + date1 + "日"+hour+"时");
	}
}

注意:month是从0开始的,而月份是从1开始的,所以month需要加一。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/190132.html原文链接:https://javaforall.cn