java中 获取list集合中时间最大或者最小的方式

    public LocalDate updateDataTime(SaOrderFac data,boolean isMin){
    
    
        if(isMin){
    
    
            List<LocalDate> startDate= data.getSaOrderProjects().stream().filter(x->x.getDateStartFact()!=null).map(SaOrderProject::getDateStartFact)
                    .distinct().collect(Collectors.toList());
            return startDate.stream().min(LocalDate::compareTo).get();
        }else{
    
    
            List<LocalDate> endDate= data.getSaOrderProjects().stream().filter(x->x.getDateEndFact()!=null).map(SaOrderProject::getDateEndFact)
                    .distinct().collect(Collectors.toList());
            return endDate.stream().max(LocalDate::compareTo).get();
        }
    }

注意判定 null 要不会报错 空指针

猜你喜欢

转载自blog.csdn.net/Drug_/article/details/129005497