zoukankan      html  css  js  c++  java
  • 两组日期取交集

    代码写的比较挫。。。。。。

    private static void getDate (LocalDate as,LocalDate ae,LocalDate cs,LocalDate ce){ LocalDate startDate=null; LocalDate endDate=null; // as<ae ae<cs cs<ce if(as.isBefore(ae) &&ae.isBefore(cs) &&cs.isBefore(ce)){ // null } // cs<ce ce<as as<ae if(cs.isBefore(ce) &&ce.isBefore(as) &&as.isBefore(ae)){ // null } // as<cs<ae<ce if(as.isBefore(cs) &&cs.isBefore(ae) &&ae.isBefore(ce)){ // cs--ae startDate=cs; endDate=ae; } // cs<as<ce<ae if(cs.isBefore(as) &&as.isBefore(ce) &&ce.isBefore(ae)){ // as--ce startDate=as; endDate=ce; } // as ae ce // cs if(as.isBefore(ae) &&ae.isBefore(ce) &&ae.equals(cs)){ // ae--ae startDate=ae; endDate=ae; } // cs ce ae // as if(cs.isBefore(ce) &&ce.isBefore(ae) &&ce.equals(as)){ // as--as startDate=as; endDate=as; } // as ce ae || as cs ae || as cs ce ae // cs || ce || if( (as.isBefore(ce) &&ce.isBefore(ae) &&as.equals(cs)) || (as.isBefore(cs) &&cs.isBefore(ae) &&ae.equals(ce)) || (as.isBefore(cs) &&cs.isBefore(ce) &&ce.isBefore(ae)) ){ // cs--ce startDate=cs; endDate=ce; } // as ae ce || cs as ae || as ae || cs as ae ce // cs || ce || cs ce || if( (as.isBefore(ae) &&ae.isBefore(ce) &&as.equals(cs)) ||(cs.isBefore(as) &&as.isBefore(ae) &&ae.equals(ce)) ||(as.isEqual(cs) &&ae.equals(ce)) ||(cs.isBefore(as) &&as.isBefore(ae) &&ae.isBefore(ce)) ){ // as--ae startDate=as; endDate=ae; } DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd"); System.out.println(startDate.format(df)+"--"+endDate.format(df)); }
    验证日期如下:
    
        DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
    
    
            LocalDate as = LocalDateTime.parse("2019-07-05 00:00:00",df).toLocalDate();//影片-首映日期
            LocalDate ae = LocalDateTime.parse("2019-09-28 00:00:00",df).toLocalDate();;//影片-落幕日期
    
    
    //        LocalDate cs = LocalDateTime.parse("2019-10-01 00:00:00",df).toLocalDate();//影城-开始日期
    //        LocalDate ce = LocalDateTime.parse("2019-10-20 00:00:00",df).toLocalDate();;//影城-结束日期
    //        ////
    //        LocalDate cs = LocalDateTime.parse("2019-06-01 00:00:00",df).toLocalDate();//影城-开始日期
    //        LocalDate ce = LocalDateTime.parse("2019-07-01 00:00:00",df).toLocalDate();;//影城-结束日期
    //        ////
    //        LocalDate cs = LocalDateTime.parse("2019-09-01 00:00:00",df).toLocalDate();//影城-开始日期
    //        LocalDate ce = LocalDateTime.parse("2019-10-20 00:00:00",df).toLocalDate();;//影城-结束日期
    //        //9.1-9.28
    //
    //        LocalDate cs = LocalDateTime.parse("2019-06-03 00:00:00",df).toLocalDate();//影城-开始日期
    //        LocalDate ce = LocalDateTime.parse("2019-08-05 00:00:00",df).toLocalDate();;//影城-结束日期
    //        //7.5-8.5
    //
    //        LocalDate cs = LocalDateTime.parse("2019-08-03 00:00:00",df).toLocalDate();//影城-开始日期
    //        LocalDate ce = LocalDateTime.parse("2019-09-06 00:00:00",df).toLocalDate();;//影城-结束日期
    //        //8.3-9.6
    //
    //        LocalDate cs = LocalDateTime.parse("2019-06-05 00:00:00",df).toLocalDate();//影城-开始日期
    //        LocalDate ce = LocalDateTime.parse("2019-10-20 00:00:00",df).toLocalDate();;//影城-结束日期
    //        //7.5-9.28
    //
    //        LocalDate cs = LocalDateTime.parse("2019-09-28 00:00:00",df).toLocalDate();//影城-开始日期
    //        LocalDate ce = LocalDateTime.parse("2019-10-20 00:00:00",df).toLocalDate();;//影城-结束日期
    //        //9.28-9.28
    //
    //        LocalDate cs = LocalDateTime.parse("2019-06-03 00:00:00",df).toLocalDate();//影城-开始日期
    //        LocalDate ce = LocalDateTime.parse("2019-07-05 00:00:00",df).toLocalDate();;//影城-结束日期
    //        //7.5-7.5
    //
    //        LocalDate cs = LocalDateTime.parse("2019-07-05 00:00:00",df).toLocalDate();//影城-开始日期
    //        LocalDate ce = LocalDateTime.parse("2019-08-03 00:00:00",df).toLocalDate();;//影城-结束日期
    //        //7.5-8.3
    //
    //        LocalDate cs = LocalDateTime.parse("2019-08-01 00:00:00",df).toLocalDate();//影城-开始日期
    //        LocalDate ce = LocalDateTime.parse("2019-09-28 00:00:00",df).toLocalDate();;//影城-结束日期
    //        //8.1-9.28
    //
    //        LocalDate cs = LocalDateTime.parse("2019-07-05 00:00:00",df).toLocalDate();//影城-开始日期
    //        LocalDate ce = LocalDateTime.parse("2019-10-20 00:00:00",df).toLocalDate();;//影城-结束日期
    //        //7.5-9.28
    //
    //        LocalDate cs = LocalDateTime.parse("2019-06-05 00:00:00",df).toLocalDate();//影城-开始日期
    //        LocalDate ce = LocalDateTime.parse("2019-09-28 00:00:00",df).toLocalDate();;//影城-结束日期
    //        //7.5-9.28
    //
    //        LocalDate cs = LocalDateTime.parse("2019-07-05 00:00:00",df).toLocalDate();//影城-开始日期
    //        LocalDate ce = LocalDateTime.parse("2019-09-28 00:00:00",df).toLocalDate();;//影城-结束日期
    //        //7.5-9.28
  • 相关阅读:
    MongoDB,无模式文档型数据库简介
    数据说话:怎样的程序员最抢手?
    猛醒:也许我们一生追求的都错了!
    中国风电生产监控平台界面
    如何跟着趋势去赚钱
    2015年最好的员工心态培养 -- 我们需要把简单的事情做到极致
    什么是程序员的核心竞争力?
    第一篇 技术选型
    .net core 读取配置文件
    .net core nlog记录日志
  • 原文地址:https://www.cnblogs.com/puke/p/11890179.html
Copyright © 2011-2022 走看看