某一年节假日生成代码
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); }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现