Calendar类

Calendar类概述:
Calendar 类是一个抽象类
它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,
并为操作日历字段(例如获得下星期的日期)提供了一些方法,瞬间可用毫秒值来表示。
成员方法
public static Calendar getInstance()
public int get(int field)
public void add(int field,int amount)
public final void set(int year,int month,int date)

/*
java.util.GregorianCalendar
	[
		time=1556095527688,
		areFieldsSet=true,
		areAllFieldsSet=true,
		lenient=true,
		zone=sun.util.calendar.ZoneInfo[
			id="Asia/Shanghai",
			offset=28800000,
			dstSavings=0,
			useDaylight=false,
			transitions=19,
			lastRule=null
		],
			firstDayOfWeek=1,
			minimalDaysInFirstWeek=1,
			ERA=1,
			YEAR=2019,
			MONTH=3,
			WEEK_OF_YEAR=17,
			WEEK_OF_MONTH=4,
			DAY_OF_MONTH=24,
			DAY_OF_YEAR=114,
			DAY_OF_WEEK=4,
			DAY_OF_WEEK_IN_MONTH=4,
			AM_PM=1,
			HOUR=4,
			HOUR_OF_DAY=16,
			MINUTE=45,
			SECOND=27,
			MILLISECOND=688,
			ZONE_OFFSET=28800000,
			DST_OFFSET=0
		]
*/

举例代码如下

public class CalendarDemo01 {
	public static void main(String[] args) {
		Calendar c = Calendar.getInstance(Locale.CHINA);
		System.out.println(c);
		
//		public int get(int field)
		int year = c.get(Calendar.YEAR);
		int month = c.get(Calendar.MONTH) + 1;
		int day = c.get(Calendar.DAY_OF_MONTH);
		int hour = c.get(Calendar.HOUR_OF_DAY);
		int minute = c.get(Calendar.MINUTE);
		int second = c.get(Calendar.SECOND);
		System.out.format("%d年%s月%d日 %d:%d:%d%n", year, (month < 10) ? "0" + month: month, day, hour, minute, second);
		
//		long millis = c.getTimeInMillis();
//		System.out.println(millis);
		
		// 将日历和日期类相互转换
//		Date d = new Date(c.getTimeInMillis());
//		System.out.println(d);
		
		// 将日期转换成日历
//		Date d2 = new Date();
//		c.setTimeInMillis(d2.getTime());
		
//		public void add(int field,int amount)
		c.add(Calendar.YEAR, 100);
		year = c.get(Calendar.YEAR);
		System.out.format("%d年%s月%d日 %d:%d:%d%n", year, (month < 10) ? "0" + month: month, day, hour, minute, second);
		
		c.add(Calendar.MONTH, -12);
		year = c.get(Calendar.YEAR);
		month = c.get(Calendar.MONTH);
		System.out.format("%d年%s月%d日 %d:%d:%d%n", year, (month < 10) ? "0" + month: month, day, hour, minute, second);
		
		// public final void set(int year,int month,int date)	
		c.set(1970, 8, 1);
		year = c.get(Calendar.YEAR);
		month = c.get(Calendar.MONTH);
		day = c.get(Calendar.DAY_OF_MONTH);
		System.out.format("%d年%s月%d日 %d:%d:%d%n", year, (month < 10) ? "0" + month: month, day, hour, minute, second);
		
	}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值