java怎么获取当前时间所属季度;并且获取上个季度的三个月份。

核心代码:

LocalDate current = LocalDate.now();
int year = current.getYear();
int quarter = (current.getMonthValue() - 1) / 3 + 1;

LocalDate

LocalDate是Java8的新特性,他是一个全新的日期时间API;下面的例子是计算当前时间的年份和季,并且计算上个季度的三个月份。

    import java.time.LocalDate;
    import java.time.format.DateTimeFormatter;
    
    public class Main {
        public static void main(String[] args) {
            // 获取当前时间的年份和季度
            LocalDate current = LocalDate.now();
            int year = current.getYear();
            int quarter = (current.getMonthValue() - 1) / 3 + 1;
    
            // 计算上个季度的三个月份
            int prevQuarter = (quarter - 2 + 4) % 4 + 1;
            String[] prevMonths = new String[3];
            for (int i = 0; i < prevMonths.length; i++) {
                int prevMonth = prevQuarter * 3 - 3 + i + 1;
                if (prevMonth > 12) {
                    prevMonth -= 12;
                    prevMonths[i] = (year - 1) + "-Q" + prevQuarter;
                } else {
                    prevMonths[i] = year + "-Q" + prevQuarter;
                }
                prevMonths[i] += "-" + String.format("%02d", prevMonth);
            }
    
            // 输出
            System.out.println("当前时间:" + current.format(DateTimeFormatter.ISO_LOCAL_DATE));
            System.out.println("当前季度:" + year + "-Q" + quarter);
            System.out.println("上个季度的三个月份:");
            for (String month : prevMonths) {
                System.out.println("- " + month);
            }
        }
    }     

输出结果:

当前时间:2023-06-20
当前季度:2023-Q2
上个季度的三个月份:

  • 2023-Q1-01
  • 2023-Q1-02
  • 2023-Q1-03

标签: none

相关阅读

  • 测试信息
  • 开发商:阿里巴巴
  • 版本号:1.0
  • 配色:(企业家)” 推选活动结果
  • 测试信息
  • 测试信息
  • 测试信息