详细介绍Calendar日历类

Calendar日历类

1.1、概述

  • java.util.Calendar类表示一个“日历类”,可以进行日期运算。它是一个抽象类,不能创建对象,我们可以使用它的子类:java.util.GregorianCalendar类。
  • 有两种方式可以获取GregorianCalendar对象:
    1:直接创建GregorianCalendar对象;
    2:通过Calendar的静态方法getInstance()方法获取GregorianCalendar对象

1.2、常用方法

方法名说明
public static Calendar getInstance()获取一个它的子类GregorianCalendar对象。
public int get(int field)Calendar.YEAR : 年
public int get(int field)Calendar.MONTH :月
public int get(int field)Calendar.DAY_OF_MONTH:月中的日期
public int get(int field)Calendar.HOUR:小时
public int get(int field)Calendar.MINUTE:分钟
public int get(int field)Calendar.SECOND:秒
public int get(int field)Calendar.DAY_OF_WEEK:星期
public void set(int field,int value)设置某个字段的值
public void add(int field,int amount)为某个字段增加/减少指定的值

1.3、get方法示例

	public class Demo { 
		public static void main(String[] args) { 
			//1.获取一个GregorianCalendar对象 
			Calendar instance = Calendar.getInstance();//获取子类对象 
			//2.打印子类对象 
			System.out.println(instance); 
			//3.获取属性 
			int year = instance.get(Calendar.YEAR); 
			int month = instance.get(Calendar.MONTH) + 1;//Calendar的月份值是0-11 
			int day = instance.get(Calendar.DAY_OF_MONTH); 
			
			int hour = instance.get(Calendar.HOUR); 
			int minute = instance.get(Calendar.MINUTE); 
			int second = instance.get(Calendar.SECOND); 
			int week = instance.get(Calendar.DAY_OF_WEEK);//返回值范围:1--7,分别表示:"星期 日","星期一","星期二",...,"星期六" 
			
			System.out.println(year + "年" + month + "月" + day + "日" + hour + ":" + minute + ":" + second); 
			System.out.println("第"+week+"周");

1.4、set方法示例

	public class Demo { 
		public static void main(String[] args) { 
			//设置属性——set(int field,int value): 
			Calendar c1 = Calendar.getInstance();//获取当前日期
			//计算班长出生那天是星期几(假如班长出生日期为:1998年3月18日) 
			c1.set(Calendar.YEAR, 1998); 
			c1.set(Calendar.MONTH, 3 - 1);//转换为Calendar内部的月份值 
			c1.set(Calendar.DAY_OF_MONTH, 18); 
			int w = c1.get(Calendar.DAY_OF_WEEK); 
			System.out.println("班长出生那天是:" + "第"+ w +"周"); 
		}

1.5、add方法示例

	public class Demo { 
		public static void main(String[] args) { 
			//计算200天以后是哪年哪月哪日,星期几? 
			Calendar c2 = Calendar.getInstance();//获取当前日期 
			c2.add(Calendar.DAY_OF_MONTH, 200);//日期加200 
			int y = c2.get(Calendar.YEAR); 
			int m = c2.get(Calendar.MONTH) + 1;
			//转换为实际的月份 
			int d = c2.get(Calendar.DAY_OF_MONTH); 
			int wk = c2.get(Calendar.DAY_OF_WEEK); 
			System.out.println("200天后是:" + y + "年" + m + "月" + d + "日" + "第"+ w +"周"); 
		}//查表法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值