1.list中筛选某个属性最大值的对象
返回teamid最大的那个对象
Optional<VirtualFleetSettlement > maxTeamId= allAwarList.stream().filter(Objects::nonNull).filter(item -> item.getTeamId() != null).max(Comparator.comparingInt(VirtualFleetSettlement ::getTeamId));
VirtualFleetSettlement maxEmp = maxTeamId.orElse(new VirtualFleetSettlement());
2.list按某个属性进行分类
按captain分类
captainDetailDtos=allDetailDtos.stream().filter(j -> j.getCaptain().equals(0))
.collect(
Collectors.toList());
//队员奖励
notcaptainDetailDtos= allDetailDtos.stream().filter(j -> j.getCaptain().equals(1))
.collect(
Collectors.toList());
3.查询list是否包含某个对象
WxMenuDto p = wxMenuDtos
.stream()
.filter(wxMenuDto -> wxMenuDto.getId().equals(id)).findFirst()
.orElse(null); //orElse 是为了防止空指针,get()会报空指针