首页 > 其他分享 >某一年节假日生成代码

某一年节假日生成代码

时间:2023-08-24 15:12:47浏览次数:38  
标签:map 节假日 Calendar 代码 dateList 生成 simdf calendar isOffDay

public static void main(String[] args) throws Exception {
        int year = 2023;
        List<String> dateList=new ArrayList<String>();
        SimpleDateFormat simdf = new SimpleDateFormat("yyyy-MM-dd");
        Calendar calendar = new GregorianCalendar(year, 0, 1);
        String a = HttpClient.doGet("https://api.jiejiariapi.com/v1/holidays/2023");
        JSONObject jsonObject = JSONObject.fromObject(a);
        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) {
                Map<String, Object> map = (Map<String, Object>)jsonObject.get(simdf.format(calendar.getTime()));
                if(map != null && map.size() != 0){
                    boolean isOffDay = (boolean)map.get("isOffDay");
                    if(!isOffDay){
                        System.out.println("周日:"+simdf.format(calendar.getTime()));
                    }else{
                        dateList.add(simdf.format(calendar.getTime()));
                    }
                }else{
                    dateList.add(simdf.format(calendar.getTime()));
                }
            }
            calendar.set(Calendar.DAY_OF_WEEK, Calendar.SATURDAY);
            if (calendar.get(Calendar.YEAR) == year) {
                Map<String, Object> map = (Map<String, Object>)jsonObject.get(simdf.format(calendar.getTime()));
                if(map != null && map.size() != 0){
                    boolean isOffDay = (boolean)map.get("isOffDay");
                    if(!isOffDay){
                        System.out.println("周六:"+simdf.format(calendar.getTime()));
                    }else{
                        dateList.add(simdf.format(calendar.getTime()));
                    }
                }else{
                    dateList.add(simdf.format(calendar.getTime()));
                }
            }
        }

        System.out.println(dateList.size());
        System.out.println(dateList);

        Map<String, Map<String, Object>> map = (Map<String, Map<String, Object>>)jsonObject;
        map.forEach((k,v)->{
            boolean isOffDay = (boolean)v.get("isOffDay");
            if(isOffDay){
                dateList.add(k);
            }
        });
        //集合去重排序
        List<String> dateList1 = dateList.stream().distinct().sorted().collect(Collectors.toList());
        System.out.println(dateList1.size());
        System.out.println(dateList1);


    }

 

标签:map,节假日,Calendar,代码,dateList,生成,simdf,calendar,isOffDay
From: https://www.cnblogs.com/wmy666/p/17654166.html

相关文章

  • StableVideo:使用Stable Diffusion生成连续无闪烁的视频
    使用StableDiffusion生成视频一直是人们的研究目标,但是我们遇到的最大问题是视频帧和帧之间的闪烁,但是最新的论文则着力解决这个问题。本文总结了Chai等人的论文《StableVideo:Text-drivenconsistency-awareDiffusionVideoEditing》,该论文提出了一种新的方法,使扩散模型能......
  • 《流畅的python》— 列表推导与生成器表达式
    列表推导是构建列表(list)的快捷方式,而生成器表达式则可以用来创建其他任何类型的序列。如果你的代码里并不经常使用它们,那么很可能你错过了许多写出可读性更好且更高效的代码的机会。很多Python程序员都把列表推导(listcomprehension)简称为listcomps,生成器表达式(generatorexpre......
  • [代码随想录]Day26-回溯算法part06
    题目:332.重新安排行程思路:其实这里已经是图的部分了,回溯应该也可以。Hierholzer算法解决欧拉问题代码:funcfindItinerary(tickets[][]string)[]string{var(m=map[string][]string{}res[]string)for_,ticket:=rangeticket......
  • 千人千面:来看看这道简单的SQL面试题——设计一个学生成绩表
    今早上班后清理工位时,发现这张废纸,记录一下。 下面是这个简单的数据库应用面试题1、设计一个学生成绩表(DDL或者是逻辑结构)2、用一条SQ语句查询总成绩大于270分的学生3、用一条SQL语句查询出每门课都大于80分的学生 ......
  • transformer模型首次体验代码
    首先是安装python,更新pip源到清华源。安装transformerpipinstalltransformer安装jupyterlab,也简单一行pipinstalljupyterlab现在不想用anaconda了,因为国内没有源了,国外的又慢。直接用pip吧。然后开始体验之旅吧:打开终端,输入:jupyterlab会弹出一个web页面,代开后......
  • 加密编译完的html代码
    将HTML代码加密可以增加代码的安全性,但请注意,加密后的代码可能会增加加载和解析的复杂性,并且无法直接编辑和调试。以下是一些常见的方法来加密HTML代码:使用在线工具:有一些在线工具可以帮助您加密HTML代码,例如HTML加密器。这些工具通常使用特定的算法和技术来对代码进行加密和......
  • 代码随想录第一天|704.二分查找、27.移除元素
    二分查找对数组的要求有两点:有序无重复元素,若有重复元素则返回的元素下标不唯一边界条件是while(left<=right)代码其实是很好理解的点击查看代码classSolution{public:intsearch(vector<int>&nums,inttarget){intlength=nums.size();......
  • 【DBN回归预测】基于麻雀算法优化深度置信网络SSA-DBN实现数据回归多输出预测附matlab
    ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。......
  • 图论算法代码
    当参加数学建模竞赛时,图论算法是一个常用的解决方案之一。以下是一个使用Python实现的深度优先搜索(DFS)算法示例,用于遍历图的所有节点:点击查看代码classGraph:def__init__(self):self.adjacency_list={}defadd_edge(self,u,v):ifunot......
  • 模拟退火算法代码
    当参加数学建模竞赛时,模拟退火算法是一个常用的解题方法之一。以下是一个简单的模拟退火算法的代码示例,用于解决旅行商问题(TSP):点击查看代码importmathimportrandomdefdistance(point1,point2):#计算两个点之间的欧几里德距离returnmath.sqrt((point1[0]-poi......