Java正确获取星期Calendar.DAY_OF_WEEK
正确获取星期几(Calendar.DAY_OF_WEEK)
Calendar now = Calendar.getInstance(); //一周第一天是否为星期天 boolean isFirstSunday = (now.getFirstDayOfWeek() == Calendar.SUNDAY); //获取周几 int weekDay = now.get(Calendar.DAY_OF_WEEK); //若一周第一天为星期天,则-1 if(isFirstSunday){weekDay = weekDay - 1;if(weekDay == 0){weekDay = 7;} } //打印周几 System.out.println(weekDay);//若当天为2014年10月13日(星期一),则打印输出:1 //若当天为2014年10月17日(星期五),则打印输出:5 //若当天为2014年10月19日(星期日),则打印输出:7
星期日为一周的第一天 | 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 |
以下参考:
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.地区名) 来实现。
System.out.println(calendar.get(Calendar.DAY_OF_WEEK));
返回的是周几,而不是一周的第几天
可以这样设置,星期第一天是星期几:
calendar.setFirstDayOfWeek(Calendar.MONDAY);
也可以设置Calendar.SUNDAY
设置好了就决定了当前日期的WEEK_OF_YEAR,但并不会改变DAY_OF_WEEK !
3. 获取日期时 Calendar.DAY_OF_MONTH 不需要特殊的操作,他直接返回一个月中的第几天
Java正确获取星期Calendar.DAY_OF_WEEK相关推荐
- java calendar星期_Java正确获取星期Calendar.DAY_OF_WEEK
Calendar now =Calendar.getInstance();//一周第一天是否为星期天 boolean isFirstSunday = (now.getFirstDayOfWeek() ...
- Java正确获取客户端真实IP方法整理
转载自 干货:Java正确获取客户端真实IP方法整理 在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的.但是在通过了Apach ...
- 干货:Java正确获取客户端真实IP方法整理
image 在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的.但是在通过了Apache,Squid等反向代理软件就不能获取到客 ...
- java后端获取时间
前言 我们在后端开发过程中,会遇到需要获取当前时间.昨日时间的情况,下面是在后端获取时间的方法 Java后端获取时间 Calendar ca = Calendar.getInstance(); Sim ...
- 正确获取星期几(Calendar.DAY_OF_WEEK)
2019独角兽企业重金招聘Python工程师标准>>> 正确获取星期几(Calendar.DAY_OF_WEEK) Java代码 Calendar now = Calendar.ge ...
- Android Studio 基础 之 获取系统Calendar 日历日程(可获得当天以后可设定天数范围内的日历日程) (涉及指定日期时间判断是星期几的方法使用)的方法整理
Android Studio 基础 之 获取系统Calendar 日历日程(可获得当天以后可设定天数范围内的日历日程) (涉及指定日期时间判断是星期几的方法使用)的方法整理 目录 Android St ...
- Java中Calendar.DAY_OF_WEEK、DAY_OF_MONTH需要减一的原因
Java中对日期的处理需要用到Calendar类,其中有几个方法在使用时需要新手注意. 1. 在获取月份时,Calendar.MONTH + 1 的原因(Java中Calendar.MONTH返回的数 ...
- java week of year_JDK Calendar类获取WEEK_OF_YEAR时的陷阱
/*Calendar类是Java中使用的较为频繁的类,这个类中有很多静态方法非常实用,免去了我们自己手动计算日期的过程.Calendar.get(Calendar.WEEK_OF_YEAR) 用于获取 ...
- 日历 android 周历,Android Studio 基础 之 获取系统Calendar 日历日程 (涉及指定日期时间判断是星期几的方法使用)的方法整理...
Android Studio 基础 之 获取系统Calendar 日历日程 (涉及指定日期时间判断是星期几的方法使用)的方法整理 目录 Android Studio 基础 之 获取系统Calendar ...
最新文章
- 加大力度改革 成都公安提高服务金融安防建设能力
- [PYTHON] 核心编程笔记(18.多线程编程)
- Python视频处理库:scikit-video
- Nlpir大数据知识图谱的落地指南
- 混合列压缩(HCC)在OLAP及OLTP场景中的测试
- html源码蔡,html基础代码详解
- [Android] Android 锁屏实现与总结 (一)
- Leetcode 99. 恢复搜索二叉树
- mt管理器图片在哪个文件夹_MT管理器构造(新手小白教程)-小白文件管理器
- 《Unity shader入门精要》阅读笔记
- 画 ArcFace 中的 margin 曲线
- uni-app使用阿里iconfont多色图标
- 通过FAR计算fRR
- 分析扁平线圈特斯拉模块电路
- PP-LiteSeg
- 自制IDE转SATA电源转接线
- 前端 react教程(详细版)
- 11个药店GSP风险管理教程
- Real-Time Rendering (5) - 非真实性渲染(Non-Photorealistic Rendering)
- sass-loader高版本问题,解析就报错!!