import java.util.*;
class Ideone {
static List<Alpha> list;
public static void main
(String[] args
) { list
= new ArrayList
<>(Arrays.
asList(new Alpha
("foo"),
new Alpha
(name
),
new Alpha("bar"), new Alpha("lol")));
Alpha temp = removeAndGet(name);
System.
out.
println(temp
); //qwerty System.
out.
println(list
); //[foo, bar, lol] }
static Alpha removeAndGet
(String name
) { //получаем первый подходящий объект
//или null, если таких нет
Alpha temp = list.stream()
.filter(a -> name.equals(a.getName()))
.findFirst()
.orElse(null);
//удаляем *ВСЕ* объекты с таким именем
list.removeIf(a -> name.equals(a.getName()));
return temp;
}
static class Alpha {
this.name = name;
}
return name;
}
@Override
return name;
}
}
}
aW1wb3J0IGphdmEudXRpbC4qOwpjbGFzcyBJZGVvbmUgewoJc3RhdGljIExpc3Q8QWxwaGE+IGxpc3Q7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoU3RyaW5nW10gYXJncykgewoJCVN0cmluZyBuYW1lID0gInF3ZXJ0eSI7CgkJbGlzdCA9IG5ldyBBcnJheUxpc3Q8PihBcnJheXMuYXNMaXN0KG5ldyBBbHBoYSgiZm9vIiksIG5ldyBBbHBoYShuYW1lKSwgCgkJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBBbHBoYSgiYmFyIiksIG5ldyBBbHBoYSgibG9sIikpKTsKCgkJQWxwaGEgdGVtcCA9IHJlbW92ZUFuZEdldChuYW1lKTsKCQkKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4odGVtcCk7IC8vcXdlcnR5CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGxpc3QpOyAvL1tmb28sIGJhciwgbG9sXQoJfQoJc3RhdGljIEFscGhhIHJlbW92ZUFuZEdldChTdHJpbmcgbmFtZSkgewoJCS8v0L/QvtC70YPRh9Cw0LXQvCDQv9C10YDQstGL0Lkg0L/QvtC00YXQvtC00Y/RidC40Lkg0L7QsdGK0LXQutGCCgkJLy/QuNC70LggbnVsbCwg0LXRgdC70Lgg0YLQsNC60LjRhSDQvdC10YIKICAgICAgICBBbHBoYSB0ZW1wID0gbGlzdC5zdHJlYW0oKQoJCSAgICAgICAgICAgICAgICAgLmZpbHRlcihhIC0+IG5hbWUuZXF1YWxzKGEuZ2V0TmFtZSgpKSkKCQkgICAgICAgICAgICAgICAgIC5maW5kRmlyc3QoKQoJCSAgICAgICAgICAgICAgICAgLm9yRWxzZShudWxsKTsKCQkvL9GD0LTQsNC70Y/QtdC8ICrQktCh0JUqINC+0LHRitC10LrRgtGLINGBINGC0LDQutC40Lwg0LjQvNC10L3QtdC8CgkJbGlzdC5yZW1vdmVJZihhIC0+IG5hbWUuZXF1YWxzKGEuZ2V0TmFtZSgpKSk7CgkJcmV0dXJuIHRlbXA7CiAgICB9CiAgICBzdGF0aWMgY2xhc3MgQWxwaGEgewoJCVN0cmluZyBuYW1lOwoJCUFscGhhKFN0cmluZyBuYW1lKSB7CgkJCXRoaXMubmFtZSA9IG5hbWU7CgkJfQoJCVN0cmluZyBnZXROYW1lKCkgewoJCQlyZXR1cm4gbmFtZTsKCQl9CgkJQE92ZXJyaWRlCgkJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKCQkJcmV0dXJuIG5hbWU7CgkJfQoJfQp9