Calendar类

发表时间:2017-05-09 12:40:53 浏览量( 20 ) 留言数( 0 )

学习目标:

1、了解Java的历史

2、为什么要学习Java语言

3、端正学习态度


学习过程:

一、Calendar简介

java.util.Calendar意为日历,跟Date类有很多类似的地方,但是也有区别的,Date类主要用于时间的表示,而Calendar侧重于时间的计算。Calendar类是一个抽象基类,需要通过工厂方法去取得当前系统日历:

       Calendar calendar =  Calendar.getInstance();

Calendar 与 Date 的转换非常简单,代码如下:

 Calendar calendar = Calendar.getInstance();
// 从一个 Calendar 对象中获取 Date 对象
Date date = calendar.getTime();
// 将 Date 对象反应到一个 Calendar 对象中,
// Calendar/GregorianCalendar 没有构造函数可以接受 Date 对象
// 所以我们必需先获得一个实例,然后设置 Date 对象
calendar.setTime(date);

二、示例方法

Calendar类中提供了大量各种用于日期计算的方法

public class CalStu {
	public static void main(String[] args) {

		// 获得实例对象使用 getInstance
		Calendar cal = Calendar.getInstance();
		//设置值
		//cal.set(Calendar.YEAR, 1997);
		//cal.set(Calendar.MINUTE, 3);
		//可以使用add计算
		cal.add(Calendar.YEAR, -30);//
                //获得年月日,时分秒,日期等
		System.out.println("年:" + cal.get(Calendar.YEAR) + ",月:"
				+ (cal.get(Calendar.MONTH)+1) + ",日:" + cal.get(Calendar.DATE)
				+ ",时:" + cal.get(Calendar.HOUR_OF_DAY) + ":分:"
				+ cal.get(Calendar.MINUTE) + ",秒:" + cal.get(Calendar.SECOND)
				+ ",星期:" + cal.get(Calendar.DAY_OF_WEEK));
		System.out.println(cal.get(Calendar.DAY_OF_YEAR));
		System.out.println(cal.get(Calendar.WEEK_OF_YEAR));
		
		System.out.println(cal.getTime());//把calendar转换为date对象
		System.out.println(cal.getTimeInMillis());
		
		//实例
		//计算每个月的天数
		//9 月份的天数  
		for(int i=0;i<12;i++){
			cal.set(Calendar.MONTH, i+1);
			cal.set(Calendar.DATE, 1);
			
			cal.add(Calendar.DATE, -1);
			
			System.out.println("第"+(i+1)+"月的天数:"+cal.get(Calendar.DATE));
		}
		

	}

}

当然这个输出,会因为你的因为你当前的运行时间不同而不同,程序输出如下:

年:1984,月:2,日:20,时:23:分:8,秒:25,星期:2

51

8

Mon Feb 20 23:08:25 CST 1984

446137705832

第1月的天数:31

第2月的天数:29

第3月的天数:31

第4月的天数:30

第5月的天数:31

第6月的天数:30

第7月的天数:31

第8月的天数:31

第9月的天数:30

第10月的天数:31

第11月的天数:30

第12月的天数:31

三、完成以下练习

1、格式化输出当期日期。如:2012年3月13日 21:30:30


2、把字符串“2012-3-6 20:78:1”解释为日期,并输出。


3、请问今年是闰年了吗?


4、请用程序测试使用循环计算1+2+...100000所用的时间(以秒为单位)。


5、小明是1992年7月2日生日的,国家规定22岁就可以去结婚,请问小明什么时候可以去结婚?


6、计算下一年的今天是星期几,请用程序打印输出。


7、输出2012年4月的日历。类似日历的格式输出。

   输出:

    日 一 二 三 四 五 六 

    1   2  3  4  5  6  7


8、输出2013年整年的日历。

答案下载: