calendar的使用注意点
Java中对日期的处理需要用到Calendar类,其中有几个方法在使用时需要新手注意。
1. 在获取月份时,Calendar.MONTH + 1 的原因
Java中的月份遵循了罗马历中的规则:当时一年中的月份数量是不固定的,第一个月是JANUARY。而Java中Calendar.MONTH返回的数值其实是当前月距离第一个月有多少个月份的数值,JANUARY在Java中返回“0”,所以我们需要+1。
2. 在获取星期几 Calendar.DAY_OF_WEEK – 1 的原因
Java中Calendar.DAY_OF_WEEK其实表示:一周中的第几天,所以他会受到 第一天是星期几 的影响。
有些地区以星期日作为一周的第一天,而有些地区以星期一作为一周的第一天,这2种情况是需要区分的。
看下表的返回值
星期日为一周的第一天 | SUN | MON | TUE | WED | THU | FRI | SAT |
DAY_OF_WEEK返回值 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
星期一为一周的第一天 | MON | TUE | WED | THU | FRI | SAT | SUN |
DAY_OF_WEEK返回值 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
所以Calendar.DAY_OF_WEEK需要根据本地化设置的不同而确定是否需要 “-1”
Java中设置不同地区的输出可以使用 Locale.setDefault(Locale.地区名) 来实现。
3. 获取日期时 Calendar.DAY_OF_MONTH 不需要特殊的操作,他直接返回一个月中的第几天
例子:
/**
* 获取当前日期是星期几<br>
*
* @param dt
* @return 当前日期是星期几
*/
public static String getWeekOfDate(Date dt) {
String[] weekDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
Calendar cal = Calendar.getInstance();
cal.setTime(dt);
int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
if (w < 0)
w = 0;
return weekDays[w];
}
转载于:https://www.cnblogs.com/zghull/p/3448304.html
calendar的使用注意点相关推荐
- Java Calendar.add()方法的使用,参数含义。指定时间差。
cal.add()方法中的参数含义: 第一个参数如果是1则代表的是对年份操作,2是对月份操作,3是对星期操作,5是对日期操作,11是对小时操作,12是对分钟操作,13是对秒操作,14是对毫秒操作. 第 ...
- java calendar与date_Java中date和calendar的用法
获取现在系统的时间和日期看起来是一件非常神奇的事情,但是当使用date和calendar之后发现仍然非常神奇. 1.date 使用date日期之前需要导入包: import java.text.Sim ...
- Calendar如何只显示“一、二、三...日”,不显示“星期”
秋水无恨 asp.net Calendar DayNameFormat Globalization DayNames http://www.csdn.net/develop/Read_Article. ...
- 【JavaSE】day03_Date、SimpleDateFormat、Calendar、Collection
[JavaSE]day03_Date.SimpleDateFormat.Calendar.Collection 1.Date及其经常使用API 1)JAVA 中的时间 Java中的时间使用标准类库的D ...
- Calendar类点点滴滴积累
为什么80%的码农都做不了架构师?>>> set(f, value) 将日历字段 f 更改为 value.此外,它设置了一个内部成员变量,以指示日历字段 f 已经被更改.尽管日 ...
- php学习,一个简单的Calendar(2) 一个简单的活动页面
有了前面的基础,后面就是将页面展示出来. 预览图如下:1号和31号分别有活动,会一并显示出来 这里需要搞定几个问题,一个就是数据库的连接,我们用\sys\class\class.db_connect. ...
- EBS form日历可选范围设置(calendar.setup )介绍
Calendar是Template提供给我们的standard object.可以使我们方便的为日期型字段提供日期的选择列表. form中设置日历方法: 1. 为日期型字段指定LOV(ENABLE_L ...
- python中,time、calendar、datetime
原文链接: python中,time.calendar.datetime-MakeDreamsFactory-51CTO博客 https://blog.51cto.com/14094286/23246 ...
- 使用java的Calendar对象获得当前日期的上几个度开始、结束时间
思路: 先获得当前季度的开始和结束日期,在当前日期的基础上往前推3个月即上个季度的开始和结束日期 /*** @param flag true:开始日期:false:结束日期* @return*/pub ...
- WordPress Editorial Calendar插件权限安全绕过漏洞
漏洞名称: WordPress Editorial Calendar插件权限安全绕过漏洞 CNNVD编号: CNNVD-201302-369 发布时间: 2013-02-22 更新时间: 2013-0 ...
最新文章
- JAVA常见工具配置
- 去除源文件中的重复行的程序流程及其C代码实现
- [python] 3 、基于串口通信的嵌入式设备上位机自动测试程序框架(简陋框架)...
- Silverlight Blend动画设计系列六:动画技巧(Animation Techniques)之对象与路径转化、波感特效...
- 解决问题 inner element must either be a resource reference or empty.
- ] ssh登录慢的原因
- 计算机系统层次中应用语言级,计算机系统的多级层次结构
- 使用自定义断言丰富测试代码
- [paper reading] SSD
- 用jquery实现图片轮播
- python程序设计pdf上海交大_上海交大2011_2012程序设计python期末考试题
- qt之tcp通信,制作简易的仿qq功能
- Arduino开发ESP8266之ADS1115模数转换
- 灰灰考研c语言讲义,灰灰考研数据结构全书定稿demo.pdf
- 计算机操作系统的主要功能
- CSDN创作中心Markdown编辑器基本使用方法
- MacTeX添加.sty文件
- vue 子组件调用($emit)父组件方法后父组件方法如何回调子组件方法
- App Links的使用以及坑
- 查找chrome浏览器历史记录