使用 java stream 获取两个集合之间的交集.差集
原始对象
List<HrProbationMainPO> hrProbationMainList =new ArrayList<HrProbationMainPO>();
List<HrProbationMain> hrProbationMains = probationMainDao.findAll();
获取交集对象
- stream 转换成流 (只有变成流才能操作)
- filter 封装判断条件(如果true 则收集到结果中,false则不收集)
- collect 收集结果返回到指定类型中
//交集对象
List
/**
* 封装
* @param empNumber
* @param list
* @return
*/
public Boolean find(String empNumber, List<HrProbationMain> list) {
for (int i = 0; i < list.size(); i++) {
if (list.get(i).getEmpNumber() .equals(empNumber)) {
System.out.println(list.get(i).getEmpNumber() +"---"+empNumber+"/r/n");
return true;
}
}
return false;
}
获取set类型
Set<String> mainSet = hrProbationMains.stream().map(HrProbationMain::getEmpNumber).collect(Collectors.toSet());
坚持做好每件事,然后再做下一件。