List<emp1> empList=new ArrayList<>();
empList.add(new emp1(1,"code1","a1"));
empList.add(new emp1(2,"code2","a2"));
Set<emp1> empSet=new HashSet<>();
empSet.add(new emp1(1,"code3","a3"));
for(emp1 e:empList) {
for(emp1 a:empSet) {
if(e.getB().equals(a.getB())||e.getA()==a.getA()||e.getC().equals(a.getC())) {
System.out.println("equals");
}
}
}
class emp1{
int a;
String b;
String c;
如何使用lambda或其他更好的方法来实现这一目标? 它应该比较列表中的每个元素以进行设置并确定其是否存在? 需要比较每个元素a,b,c(如果存在)应该返回等于
答案 0 :(得分:0)
即使他forEach并没有多大意义,但您可以通过以下方式获得它:
empList.stream()
.filter(empSet::contains)
.map(a -> "equals")
.forEach(System.out::println);