Пересечение двух объектов списков в java 8. Может ли кто-нибудь сказать мне, что я делаю неправильно?
List<Student> originalStudent = new ArrayList<>();
List<Student> newStudent = new ArrayList<>();
List<Student> intersectListStudent = new LinkedList<>()
originalStudent.add(new Student("William", "Tyndale",1));
originalStudent.add(new Student("Jonathan", "Edwards",2));
originalStudent.add(new Student("Martin", "Luther"),3);
newStudent.add(new Student("Jonathan", "Edwards",2));
newStudent.add(new Student("James", "Tyndale",4));
newStudent.add(new Student("Roger", "Moore",5));
originalStudent.forEach(n ->
newStudent.stream()
.filter(db -> !n.getName().equals(db.getName()) &&
!n.getLastName().equals(db.getLastName()))
.forEach(student-> intersectListStudent .add(student)));
List
может содержать один и тот же элемент несколько раз, при пересечении списков, если A содержит элементx
трижды, а B содержит элементx
дважды, сколько раз вы ожидаете ответ в конечном списке? 3? 2? 1? Это определит, какой из этих подходов работает. - person Brian Goetz   schedule 17.12.2018