java日期处理 获取每年的周末,每月的周末
1.根据年份获取这一年的周末
public static List<String> getWeekdays(int year){List<String> dateList=new ArrayList<String>();SimpleDateFormat simdf = new SimpleDateFormat("yyyy-MM-dd");Calendar calendar = new GregorianCalendar(year, 0, 1);int i = 1;while (calendar.get(Calendar.YEAR) < year + 1) {calendar.set(Calendar.WEEK_OF_YEAR, i++);calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);if (calendar.get(Calendar.YEAR) == year) {dateList.add(simdf.format(calendar.getTime()));}calendar.set(Calendar.DAY_OF_WEEK, Calendar.SATURDAY);if (calendar.get(Calendar.YEAR) == year) {dateList.add(simdf.format(calendar.getTime()));}}return dateList;}
2.根据年份和月份获取该月的所有周末
/*** 获取当月的所有周末* @param year* @param month* @return*/public static List getWeekendInMonth(int year, int month) {List<String> dateList=new ArrayList<String>();SimpleDateFormat simdf = new SimpleDateFormat("yyyy-MM-dd");List list = new ArrayList();Calendar calendar = Calendar.getInstance();calendar.set(Calendar.YEAR, year);// 不设置的话默认为当年calendar.set(Calendar.MONTH, month - 1);// 设置月份calendar.set(Calendar.DAY_OF_MONTH, 1);// 设置为当月第一天int daySize = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);// 当月最大天数for (int i = 0; i < daySize; i++) {int week = calendar.get(Calendar.DAY_OF_WEEK);if (week == Calendar.SATURDAY ) {// 1代表周日,7代表周六 判断这是一个星期的第几天从而判断是否是周末dateList.add(simdf.format(calendar.getTime()));}if (week == Calendar.SUNDAY) {// 1代表周日,7代表周六 判断这是一个星期的第几天从而判断是否是周末dateList.add(simdf.format(calendar.getTime()));}calendar.add(Calendar.DATE, 1);//在第一天的基础上加1}return dateList;}
3.获取该月的某天到月底的所有周末
public static List getWeekendInMonthDay(int year, int month,int day) {List<String> dateList=new ArrayList<String>();SimpleDateFormat simdf = new SimpleDateFormat("yyyy-MM-dd");List list = new ArrayList();Calendar calendar = Calendar.getInstance();calendar.set(Calendar.YEAR, year);// 不设置的话默认为当年calendar.set(Calendar.MONTH, month - 1);// 设置月份calendar.set(Calendar.DAY_OF_MONTH, day);// 设置为当月指定的某天int daySize = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);// 当月最大天数for (int i = 0; i < daySize-day+1; i++) {int week = calendar.get(Calendar.DAY_OF_WEEK);if (week == Calendar.SATURDAY ) {// 1代表周日,7代表周六 判断这是一个星期的第几天从而判断是否是周末dateList.add(simdf.format(calendar.getTime()));}if (week == Calendar.SUNDAY) {// 1代表周日,7代表周六 判断这是一个星期的第几天从而判断是否是周末dateList.add(simdf.format(calendar.getTime()));}calendar.add(Calendar.DATE, 1);//在指定天数的基础上加1}return dateList;}
java日期处理 获取每年的周末,每月的周末相关推荐
- java 和 mysql 获取周 星期 的第一天 最后一天 或者 月的 日期(字符串转日期,日期转字符串,日期加减)...
获取周的第一天,最后一天 System.out.println(getStartEndDate("2016-05-01", 1)); 获取星期的第一天和最后一天 System.ou ...
- java文件中获取创建日期_如何在Java中获取文件的上次修改日期
java文件中获取创建日期 Sometimes we need to get the file last modified date in Java, usually for listeners li ...
- java 判断日期是周末_java计算两个日期之前的天数实例(排除节假日和周末)
如题所说,计算两个日期之前的天数,排除节假日和周末.这里天数的类型为double,因为该功能实现的是请假天数的计算,有请一上午假的为0.5天. 不够很坑的是每个日期都要查询数据库,感觉很浪费时间. 原 ...
- java 一周前日期_java获取当前时间前一周、前一月、前一年的时间
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Calendar c = Calend ...
- java,js获取本周和下周开始结束日期
额,本人第一次下博文,先写一篇看看咋写. 文章目录 前言 一.java下获取本周开始结束日期以及根据某个日期获取本周开始结束日期 二.js获取本周或下周日期 总结 前言 前几天开发时用到了一些获取本周 ...
- ORACLE 获取某一年中的所有周末日期
ORACLE 获取某一年中的所有周末日期 思路是先获取一整年的所有日期,标准星期,再做筛选 SELECTCHINA_WEEK AS WEEK ,TO_DATE(DATETIME, 'yyyy-MM-d ...
- java 获取文件时间_在java中怎么获取文件的最后修改日期
在java中怎么获取文件的最后修改日期 发布时间:2020-07-10 09:57:26 来源:亿速云 阅读:86 作者:Leah 在java中怎么获取文件的最后修改日期?相信很多没有经验的人对此束手 ...
- java 获取est时间_将日期字符串(EST)转换为Java日期(UTC)
我需要有关此java方法的一些建议.此方法的目的是采用表示日期的字符串-该字符串是从EST时区中的日期创建的-并将其转换为UTC时区中的java Date对象. private Date buildV ...
- java获取下周一_Java 根据查询日期,获取下周一、周日的日期
根据查询日期,获取下周一.周日的日期 private Map getNextWeek(String queryDate) throws ParseException{ Map dateMap = ne ...
最新文章
- laravel php配置,PHP Laravel框架路由配置及设置技巧全解
- 使用RMAN备份控制文件(control file)和系统参数文件(spfile)
- 使用Async同步执行异步函数
- oracle时间类型转化成java对象_Oracle数据库date类型与Java中Date的联系与转化
- Flask 中内置的 Session
- dts数据库迁移工具_传统数据库迁移上云利器-ADAM
- Tengine 安装配置全过程
- HTML+CSS+JS实现 ❤️酷炫HUD科幻数据屏幕动画界面❤️
- neo4j order by
- PAT 乙级 1046. 划拳(15) Java版
- Guava库学习:学习Concurrency(九)RateLimiter
- java计算机毕业设计大数据在线考试系统在线阅卷系统及大数据统计分析(附源码、数据库)
- 数字电路与逻辑设计 答案(第三版)
- Spotfire 修改标记及颜色
- 基于51单片机的烟雾温度火灾报警器 LCD1602显示proteus仿真
- 瑞萨e2studio(5)----使用UART串口烧写程序到瑞萨芯片
- 主动雷达和被动雷达的区别
- win10右键菜单没有新建Excel选项的解决方法
- IP67 | IP58 防护等级理解
- 2013年运唐立淇——水瓶座
热门文章
- 流量卡套餐解析:首月月租及套餐按天折算,这个你明白了吗?
- aecmap快捷键_arcmap中图形移动方法
- JS中常用方法的封装【转载】
- Python添加清华源和豆瓣源
- 知易行难的软件开发风险管理——发表于2007-02《程序员》
- 对于创业者来说,如何规避版权风险——遇到“版权流氓”死磕到底
- 苹果发布会2021秋季发布会时间 苹果秋季发布会直播地址 苹果秋季发布会发布会在线观看入口
- CentOS 安装多音频解码器打造Linux全能播放器
- 微信投屏服务器错误啥意思,红米1s怎么安装不了微信?总是安装出错!
- 对讲机怎么提高通话距离?