- 浏览: 88028 次
- 性别:
- 来自: 重庆
文章分类
public class CalendarDemo {
11.11. public static void main(String[] args) {
12.12. System.out.println("当前时间为:");
13.13. System.out.println(getCurrentTime());
14.14. System.out.println("当前时间一个月前的时间为:");
15.15. System.out.println(getOneMonthBeforeCurrentTime());
16.16. System.out.println("当前时间一个月后的时间为:");
17.17. System.out.println(getOneMonthAfterCurrentTime());
18.18. System.out.println("某月的最后一天时间为:");
19.19. System.out.println(getLastDayOfMonth());
20.20. System.out.println("今年的第一个周一为:");
21.21. System.out.println(getFirstMondayOfYear());
22.22. System.out.println("今年五月的第二个星期日为:");
23.23. System.out.println(getSecondSunDayOfMay());
24.24. System.out.print("第一周从:");
25.25. System.out.println(getFirstWeekOfYear());
26.26. }
27.27. // 获得系统当前时间
28.28. public static String getCurrentTime() {
29.29. Calendar cal = Calendar.getInstance();
30.30.// int year = cal.get(Calendar.YEAR);
31.31.// int month = cal.get(Calendar.MONTH) + 1;
32.32.// int day = cal.get(Calendar.DAY_OF_MONTH);
33.33.// return year + "-" + month + "-" + day;
34.34. return ""+cal.getTime();
35.35. }
36.36. // 获得当前时间一个月前的时间
37.37. public static String getOneMonthBeforeCurrentTime() {
38.38. Calendar cal = Calendar.getInstance();
39.39. cal.add(cal.MONTH, -1);
40.40.
41.41. //roll()方法也可以
42.42.// cal.roll(Calendar.MONTH, -1);
43.43.
44.44.// return cal.get(cal.YEAR) + "-" + (cal.get(cal.MONTH) + 1) + "-"
45.45.// + cal.get(cal.DAY_OF_MONTH);
46.46. return ""+cal.getTime();
47.47. }
48.48. // 获得当前时间一个月后的时间
49.49. public static String getOneMonthAfterCurrentTime() {
50.50. Calendar cal = Calendar.getInstance();
51.51. cal.add(cal.MONTH, 1);
52.52.// return cal.get(cal.YEAR) + "-" + (cal.get(cal.MONTH) + 1) + "-"
53.53.// + cal.get(cal.DAY_OF_MONTH);
54.54. return ""+cal.getTime();
55.55. }
56.56. // 取得某个月的最后一天
57.57. public static String getLastDayOfMonth() {
58.58. Calendar cal = Calendar.getInstance();
59.59. cal.set(2000, 1, 1);// 2000年2月1日
60.60. return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
61.61. + cal.getActualMaximum(Calendar.DAY_OF_MONTH);
62.62. }
63.63. // 获得今年的第一个周一
64.64. public static String getFirstMondayOfYear() {
65.65. Calendar cal = Calendar.getInstance();
66.66. cal.set(cal.get(Calendar.YEAR), 0, 1);// 今年的一月一日
67.67.// while (true) {
68.68.// if (cal.get(Calendar.DAY_OF_WEEK) == Calendar.MONDAY) {
69.69.//
70.70.// return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
71.71.// + cal.get(Calendar.DAY_OF_MONTH);
72.72.//
73.73.// } else {
74.74.// cal.add(Calendar.DAY_OF_WEEK, 1);
75.75.// }
76.76.// }
77.77. //如果weekDay =2 是周一
78.78. int weekDay = cal.get(Calendar.DAY_OF_WEEK);
79.79. int monDay=Calendar.MONDAY;
80.80. int sumDay = 0;
81.81. if (weekDay == monDay) {
82.82. sumDay = 0;
83.83. }
84.84. else{
85.85. sumDay=(7-weekDay+monDay);
86.86. }
87.87. cal.add(Calendar.DAY_OF_MONTH, sumDay);
88.88. return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
89.89. + cal.get(Calendar.DAY_OF_MONTH);
90.90. }
91.91. //取得五月的第二个星期日
92.92. public static String getSecondSunDayOfMay(){
93.93. Calendar cal = Calendar.getInstance();
94.94. cal.set(cal.get(Calendar.YEAR), 4, 1);//日期设置为今年的5月1日
95.95. // 如果weekDay =1 是周日
96.96. int weekDay = cal.get(Calendar.DAY_OF_WEEK);
97.97. int sunDay=Calendar.SUNDAY;
98.98. int sumDay = 0;
99.99. if (weekDay == sunDay) {
100.100. sumDay = 7;
101.101. }
102.102. else{
103.103. sumDay=(7-weekDay+sunDay)+7;
104.104. }
105.105. cal.add(Calendar.DAY_OF_MONTH, sumDay);
106.106. return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
107.107. + cal.get(Calendar.DAY_OF_MONTH);
108.108. }
109.109. //如何取得今年的第一周
110.110. /*
111.111. * 每年的第一个周开始的时间是这样计算的:
112.112. * 即:如果新年开始的1月1号在周四、周五、周六,则新年的第一周开始的时间是在新年的第二个周日;
113.113. * 否则,新年第一周开始的时间是在去年的最后一个周日;
114.114. */
115.115. public static String getFirstWeekOfYear(){
116.116. Calendar cal=Calendar.getInstance();
117.117.// cal.set(cal.get(Calendar.YEAR), 0,1);//设置时间为1月1日
118.118. cal.set(2013, 0,1);
119.119. int weekDay=cal.get(Calendar.DAY_OF_WEEK);
120.120. int sunDay=Calendar.SUNDAY;
121.121. int sumDay = 0;
122.122. //如果1月1号是周四、周五、周六
123.123. if((weekDay==5)||(weekDay==6)||(weekDay==7)){
124.124. sumDay=(7-weekDay+sunDay);
125.125. cal.add(Calendar.DAY_OF_MONTH, sumDay);
126.126. return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
127.127. + cal.get(Calendar.DAY_OF_MONTH)+"开始,到"+cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
128.128. + (cal.get(Calendar.DAY_OF_MONTH)+6)+"结束";
129.129. }
130.130. else if(weekDay==1){
131.131. return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
132.132. + cal.get(Calendar.DAY_OF_MONTH)+"开始,到"+cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
133.133. + (cal.get(Calendar.DAY_OF_MONTH)+6)+"结束";
134.134. }
135.135. else {
136.136. sumDay=(7-weekDay+sunDay);
137.137. cal.add(Calendar.DAY_OF_MONTH, -sumDay);
138.138. return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
139.139. + cal.get(Calendar.DAY_OF_MONTH)+"开始,到"+cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
140.140. + (cal.get(Calendar.DAY_OF_MONTH)+6)+"结束";
141.141. }
142.142.
143.143. }
144.144.}
//得到当前时间前一个小时时间
Calendar upHour = Calendar.getInstance();
upHour.add(upHour.HOUR, -1);
11.11. public static void main(String[] args) {
12.12. System.out.println("当前时间为:");
13.13. System.out.println(getCurrentTime());
14.14. System.out.println("当前时间一个月前的时间为:");
15.15. System.out.println(getOneMonthBeforeCurrentTime());
16.16. System.out.println("当前时间一个月后的时间为:");
17.17. System.out.println(getOneMonthAfterCurrentTime());
18.18. System.out.println("某月的最后一天时间为:");
19.19. System.out.println(getLastDayOfMonth());
20.20. System.out.println("今年的第一个周一为:");
21.21. System.out.println(getFirstMondayOfYear());
22.22. System.out.println("今年五月的第二个星期日为:");
23.23. System.out.println(getSecondSunDayOfMay());
24.24. System.out.print("第一周从:");
25.25. System.out.println(getFirstWeekOfYear());
26.26. }
27.27. // 获得系统当前时间
28.28. public static String getCurrentTime() {
29.29. Calendar cal = Calendar.getInstance();
30.30.// int year = cal.get(Calendar.YEAR);
31.31.// int month = cal.get(Calendar.MONTH) + 1;
32.32.// int day = cal.get(Calendar.DAY_OF_MONTH);
33.33.// return year + "-" + month + "-" + day;
34.34. return ""+cal.getTime();
35.35. }
36.36. // 获得当前时间一个月前的时间
37.37. public static String getOneMonthBeforeCurrentTime() {
38.38. Calendar cal = Calendar.getInstance();
39.39. cal.add(cal.MONTH, -1);
40.40.
41.41. //roll()方法也可以
42.42.// cal.roll(Calendar.MONTH, -1);
43.43.
44.44.// return cal.get(cal.YEAR) + "-" + (cal.get(cal.MONTH) + 1) + "-"
45.45.// + cal.get(cal.DAY_OF_MONTH);
46.46. return ""+cal.getTime();
47.47. }
48.48. // 获得当前时间一个月后的时间
49.49. public static String getOneMonthAfterCurrentTime() {
50.50. Calendar cal = Calendar.getInstance();
51.51. cal.add(cal.MONTH, 1);
52.52.// return cal.get(cal.YEAR) + "-" + (cal.get(cal.MONTH) + 1) + "-"
53.53.// + cal.get(cal.DAY_OF_MONTH);
54.54. return ""+cal.getTime();
55.55. }
56.56. // 取得某个月的最后一天
57.57. public static String getLastDayOfMonth() {
58.58. Calendar cal = Calendar.getInstance();
59.59. cal.set(2000, 1, 1);// 2000年2月1日
60.60. return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
61.61. + cal.getActualMaximum(Calendar.DAY_OF_MONTH);
62.62. }
63.63. // 获得今年的第一个周一
64.64. public static String getFirstMondayOfYear() {
65.65. Calendar cal = Calendar.getInstance();
66.66. cal.set(cal.get(Calendar.YEAR), 0, 1);// 今年的一月一日
67.67.// while (true) {
68.68.// if (cal.get(Calendar.DAY_OF_WEEK) == Calendar.MONDAY) {
69.69.//
70.70.// return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
71.71.// + cal.get(Calendar.DAY_OF_MONTH);
72.72.//
73.73.// } else {
74.74.// cal.add(Calendar.DAY_OF_WEEK, 1);
75.75.// }
76.76.// }
77.77. //如果weekDay =2 是周一
78.78. int weekDay = cal.get(Calendar.DAY_OF_WEEK);
79.79. int monDay=Calendar.MONDAY;
80.80. int sumDay = 0;
81.81. if (weekDay == monDay) {
82.82. sumDay = 0;
83.83. }
84.84. else{
85.85. sumDay=(7-weekDay+monDay);
86.86. }
87.87. cal.add(Calendar.DAY_OF_MONTH, sumDay);
88.88. return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
89.89. + cal.get(Calendar.DAY_OF_MONTH);
90.90. }
91.91. //取得五月的第二个星期日
92.92. public static String getSecondSunDayOfMay(){
93.93. Calendar cal = Calendar.getInstance();
94.94. cal.set(cal.get(Calendar.YEAR), 4, 1);//日期设置为今年的5月1日
95.95. // 如果weekDay =1 是周日
96.96. int weekDay = cal.get(Calendar.DAY_OF_WEEK);
97.97. int sunDay=Calendar.SUNDAY;
98.98. int sumDay = 0;
99.99. if (weekDay == sunDay) {
100.100. sumDay = 7;
101.101. }
102.102. else{
103.103. sumDay=(7-weekDay+sunDay)+7;
104.104. }
105.105. cal.add(Calendar.DAY_OF_MONTH, sumDay);
106.106. return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
107.107. + cal.get(Calendar.DAY_OF_MONTH);
108.108. }
109.109. //如何取得今年的第一周
110.110. /*
111.111. * 每年的第一个周开始的时间是这样计算的:
112.112. * 即:如果新年开始的1月1号在周四、周五、周六,则新年的第一周开始的时间是在新年的第二个周日;
113.113. * 否则,新年第一周开始的时间是在去年的最后一个周日;
114.114. */
115.115. public static String getFirstWeekOfYear(){
116.116. Calendar cal=Calendar.getInstance();
117.117.// cal.set(cal.get(Calendar.YEAR), 0,1);//设置时间为1月1日
118.118. cal.set(2013, 0,1);
119.119. int weekDay=cal.get(Calendar.DAY_OF_WEEK);
120.120. int sunDay=Calendar.SUNDAY;
121.121. int sumDay = 0;
122.122. //如果1月1号是周四、周五、周六
123.123. if((weekDay==5)||(weekDay==6)||(weekDay==7)){
124.124. sumDay=(7-weekDay+sunDay);
125.125. cal.add(Calendar.DAY_OF_MONTH, sumDay);
126.126. return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
127.127. + cal.get(Calendar.DAY_OF_MONTH)+"开始,到"+cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
128.128. + (cal.get(Calendar.DAY_OF_MONTH)+6)+"结束";
129.129. }
130.130. else if(weekDay==1){
131.131. return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
132.132. + cal.get(Calendar.DAY_OF_MONTH)+"开始,到"+cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
133.133. + (cal.get(Calendar.DAY_OF_MONTH)+6)+"结束";
134.134. }
135.135. else {
136.136. sumDay=(7-weekDay+sunDay);
137.137. cal.add(Calendar.DAY_OF_MONTH, -sumDay);
138.138. return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
139.139. + cal.get(Calendar.DAY_OF_MONTH)+"开始,到"+cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-"
140.140. + (cal.get(Calendar.DAY_OF_MONTH)+6)+"结束";
141.141. }
142.142.
143.143. }
144.144.}
//得到当前时间前一个小时时间
Calendar upHour = Calendar.getInstance();
upHour.add(upHour.HOUR, -1);
发表评论
-
java 包、类、方法、属性、常量的命名规则
2018-02-01 17:38 639Java的包名都有小写单词组成,类名首字母大写;包的路径符合 ... -
log4j封装
2017-04-28 18:21 0由于最近在做提使用log4j频繁,每次都要在类的开头都要创建 ... -
log4j封装
2017-04-28 18:17 530由于最近在做提使用log4j频繁,每次都要在类的开头都要创 ... -
java计算概率
2017-03-31 15:52 1007rates 为中奖概率值 比如:0.3,0.5,0.2 ... -
好博客地址
2017-03-14 09:58 360http://blog.csdn.net/zhangerqin ... -
xml转换成bean
2017-03-08 11:16 537实现类 import java.io.ByteArrayI ... -
java表达式验证
2016-09-26 16:34 474表达式的求值上,java的选择非常多,强大的如Groovy ... -
注解+反射实现request转bean
2016-09-02 16:02 745package com.jdk.annotation.de ... -
HttpURLConnection+post+json案例
2016-04-19 17:46 533public class HttpUtil { pri ... -
java实现手机归属地查询
2015-09-08 11:40 369import java.io.BufferedReader; ... -
DES加密解密
2015-08-19 10:16 411package queue; import java.se ... -
java反射
2014-05-27 12:39 4881 反射的应用场合 在编译时根本无法知道该对象或类可能属 ... -
将结果导出到excel并下载
2014-03-06 17:12 0String url = request.getParame ... -
java读取文件内容
2014-02-12 22:25 610package cn.huwy.fileStream; im ... -
cookie使用方法
2014-01-21 10:42 631response.setCharacterEncoding(& ... -
jsp+servlet上传文件,不用第三方jar包
2014-01-20 15:06 1135//jsp <form action=&quo ... -
权限的具体实现方法,及建表
2014-01-16 17:03 657用户表(user): user_id us ... -
日期相减得到天数
2013-10-10 14:12 795SimpleDateFormat format = new S ... -
中文日期格式转成英文日期格式
2013-09-24 10:17 923/*将中文日期格式转换成英文格式*/ SimpleDa ... -
日期比较大小
2013-09-11 21:56 470public static void main(String[ ...
相关推荐
需要注意的是,在比较两个`Calendar`对象是否相等时,应该使用`equals`方法,而不是直接比较对象引用。 #### 六、总结 `Calendar`类是Java中处理日期和时间的重要工具,它提供了丰富的API来满足各种日期处理需求。...
在`dateFormat()`方法中,使用这两个方法分别获取了日期和日期时间的格式化对象,并将当前日期和时间格式化后输出。 `SimpleDateFormat`是`DateFormat`的子类,允许程序员指定日期和时间的格式。在`...
使用 Calendar.getInstance() 方法可以取得当前时间,并将其格式化成相应的格式。例如: ```java Calendar rightNow = Calendar.getInstance(); SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd"); ...
5. **创建子控件**:通过重写`CreateChildControls()`方法,我们可以创建并配置子控件。这里我们将创建一个日历控件,并设置其初始状态和样式。 ```csharp protected override void CreateChildControls() { ...
### Calendar使用示例详解 ...通过以上示例代码的详细解析,我们不仅了解了`Calendar`类的基本用法,还掌握了如何获取和设置日期时间的不同字段。这对于日常开发工作中处理日期时间逻辑非常有帮助。
本文将深入探讨其核心特点、使用方法以及如何自定义和扩展。 一、simplecalendar.js的特点 1. 轻量级:simplecalendar.js体积小巧,加载速度快,对页面性能影响小,适合各种规模的项目。 2. 易于集成:通过简单的...
首先,我们来看一下`Calendar`的基本用法。创建一个`Calendar`实例通常需要通过`Calendar.getInstance()`静态方法,这会返回一个`Calendar`的子类实例,通常是`GregorianCalendar`,它是符合公历标准的实现。 ```...
在这个项目中,我们将会深入探讨如何使用`Calendar`来获取年、月、日、时、分以及秒等时间信息。 首先,`Calendar`类不是线程安全的,因此在多线程环境中使用时需要额外注意同步问题。在Android中,我们通常会通过`...
然而,`Date`类没有提供修改日期和时间的方法,这导致了`Calendar`类的诞生。`Calendar`是一个抽象类,提供了更为灵活的日期和时间操作。它是线程安全的,可以用于多线程环境。 `Calendar`类的主要方法包括: 1. `...
【标题】"前端项目-tui-calendar.zip"是一个包含前端日历组件源代码的压缩包,主要涉及的是"TOAST UI Calendar"。...通过理解其源码结构和使用方法,开发者可以有效地提升Web应用的时间和日程管理能力。
本篇文章将深入探讨如何在Android应用中使用Calendar类以及与之相关的知识点,包括获取日历的年月日和周、绘制日历界面、处理前后月份以及相关示例代码。 首先,`java.util.Calendar` 是一个抽象类,它提供了日期和...
- 使用 `getTime()` 方法可以将 `Calendar` 对象转换为 `Date` 对象,便于输出或进一步处理。 #### 3. 总结 通过上述代码示例可以看出,`java.util.Calendar` 类提供了非常强大的日期时间处理功能。它不仅能够...
这个“drools calendar 使用demo”应该包含了一个实际的应用示例,帮助用户理解如何在项目中有效地利用drools calendar。 drools calendar 的核心概念是通过创建自定义的日历对象来定义特定的时间窗口或时间段,在...
Java 中 Calendar 类用法实例详解 Java 中的 Calendar 类是一个非常重要的类,它提供了许多有用的方法和字段来处理日期和时间相关的操作。下面我们将详细介绍 Java 中 Calendar 类的用法实例。 首先,Calendar 类...
最后,我们可以通过`getTime()`方法将修改后的Calendar对象转换回Date,然后再次使用DateFormat进行格式化输出: ```java Date updatedDate = calendar.getTime(); System.out.println(formatter.format(updated...
使用方法(里面有例子): <link href=\"/styles/calendar.css\" rel=\"stylesheet\" type=\"text/css\"/> <script type=\"text/javascript\" src=\"<%=ctx%>/js/calendar/calendar.js\"> ...
在实际使用中,开发者可以通过Python的import语句引入LunarCalendar库,然后调用其提供的API进行日期转换。需要注意的是,由于农历计算涉及到复杂的算法,因此在处理大量数据时可能会有性能上的考量,开发者需要根据...
为了更好地理解和使用这两个类之间的转换方法,本文将详细介绍如何将`Calendar`对象转换为`Date`对象,以及如何将`Date`对象转换为`Calendar`对象。 #### 1. Calendar转为Date `Calendar`类提供了获取当前时间的...
bootstrap calendar 全年日历显示,可做年度行事历等功能,使用起来特别方便,相关使用方法详见官网:http://www.bootstrap-year-calendar.com/#Documentation/Installation
`calendar`模块还支持生成HTML格式的日历,使用`HTMLCalendar`类可以方便地生成适合网页展示的日历。 在实际编程中,这些模块的组合使用可以满足各种时间相关的操作需求,例如记录日志、处理时间戳数据、生成日历...