指定日期获取12个月

public static void main(String[] args) {
        List<String> list = new ArrayList<>(12);
        String timeStrS = "202401";
        String substrings = timeStrS.substring(0, 4);
        String substring = timeStrS.substring(4, 6);
        Integer count = Integer.valueOf(substring);
        int in = 0;
        String timeStr = substrings + "-" + substring + "-" + "01";
        LocalDate today = LocalDate.parse(timeStr, DateTimeFormatter.ofPattern("yyyy-MM-dd"));
        if (count < 12){
            today = today.plusMonths(1);
        }
        for(int i = 1;i <= 12; i++){
            LocalDate localDate;
            if (count == 12){
                localDate = today;
                count = count -1;
                in ++;
            }else {
                if (in > 0 ) {
                    i = i - 1;
                    in = 0;
                }
                localDate = today.minusMonths(i);
            }
            String ss = localDate.toString().substring(0,7).replace("-", "");
            list.add(ss);
        }
        if (list.size() > 12) {
            list.remove(12);
        }
        System.out.println(list);
    }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容