1 package oms.wang.finalTest;
2
3 import java.util.Calendar;
4
5 import org.junit.Before;
6 import org.junit.Test;
7 /**
8 * Calendar时间的常用方法
9 * @author Administrator
10 *
11 */
12 public class Class_Calendar {
13 Calendar calendar = null;
14
15 @Before
16 public void test() {
17 calendar = Calendar.getInstance();
18 }
19
20 // 基本用法,获取年月日时分秒星期
21 @Test
22 public void test1() {
23 // 获取年
24 int year = calendar.get(Calendar.YEAR);
25
26 // 获取月,这里需要需要月份的范围为0~11,因此获取月份的时候需要+1才是当前月份值
27 int month = calendar.get(Calendar.MONTH) + 1;
28
29 // 获取日
30 int day = calendar.get(Calendar.DAY_OF_MONTH);
31
32 // 获取时
33 int hour = calendar.get(Calendar.HOUR);
34 // int hour = calendar.get(Calendar.HOUR_OF_DAY); // 24小时表示
35
36 // 获取分
37 int minute = calendar.get(Calendar.MINUTE);
38
39 // 获取秒
40 int second = calendar.get(Calendar.SECOND);
41
42 // 星期,英语国家星期从星期日开始计算
43 int weekday = calendar.get(Calendar.DAY_OF_WEEK)-1;
44
45 System.out.println("现在是" + year + "年" + month + "月" + day + "日" + hour
46 + "时" + minute + "分" + second + "秒" + "星期" + weekday);
47 }
48
49 // 一年后的今天
50 @Test
51 public void test2() {
52 // 同理换成下个月的今天calendar.add(Calendar.MONTH, 1);
53 calendar.add(Calendar.YEAR, 1);
54
55 // 获取年
56 int year = calendar.get(Calendar.YEAR);
57
58 // 获取月
59 int month = calendar.get(Calendar.MONTH) + 1;
60
61 // 获取日
62 int day = calendar.get(Calendar.DAY_OF_MONTH);
63
64 System.out.println("一年后的今天:" + year + "年" + month + "月" + day + "日");
65 }
66
67 // 获取任意一个月的最后一天
68 @Test
69 public void test3() {
70 // 假设求6月的最后一天
71 int currentMonth = 6;
72 // 先求出7月份的第一天,实际中这里6为外部传递进来的currentMonth变量
73 // 1
74 calendar.set(calendar.get(Calendar.YEAR), currentMonth, 1);
75
76 //最后一天减一
77 calendar.add(Calendar.DATE, -1);
78
79 // 获取日
80 int day = calendar.get(Calendar.DAY_OF_MONTH);
81
82 System.out.println("6月份的最后一天为" + day + "号");
83 }
84
85 // 设置日期
86 @Test
87 public void test4() {
88 calendar.set(Calendar.YEAR, 2000);
89 System.out.println("现在是" + calendar.get(Calendar.YEAR) + "年");
90
91 calendar.set(2008, 8, 8);
92 // 获取年
93 int year = calendar.get(Calendar.YEAR);
94
95 // 获取月
96 int month = calendar.get(Calendar.MONTH);
97
98 // 获取日
99 int day = calendar.get(Calendar.DAY_OF_MONTH);
100
101 System.out.println("现在是" + year + "年" + month + "月" + day + "日");
102 }
103
104 }