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
) { Alpha result = null;
Iterator<Alpha> iterator = list.iterator();
while(iterator.hasNext()) {
Alpha a = iterator.next();
if(name.equals(a.getName())) {
//так будет присвоен последний найденный элемент
//если важно выбрать первый, то нужно добавить проверку на null
result = a;
iterator.remove();
}
}
return result;
}
static class Alpha {
this.name = name;
}
return name;
}
@Override
return name;
}
}
}
aW1wb3J0IGphdmEudXRpbC4qOwpjbGFzcyBJZGVvbmUgewoJc3RhdGljIExpc3Q8QWxwaGE+IGxpc3Q7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoU3RyaW5nW10gYXJncykgewoJCVN0cmluZyBuYW1lID0gInF3ZXJ0eSI7CgkJbGlzdCA9IG5ldyBBcnJheUxpc3Q8PihBcnJheXMuYXNMaXN0KG5ldyBBbHBoYSgiZm9vIiksIG5ldyBBbHBoYShuYW1lKSwgCgkJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBBbHBoYSgiYmFyIiksIG5ldyBBbHBoYSgibG9sIikpKTsKCgkJQWxwaGEgdGVtcCA9IHJlbW92ZUFuZEdldChuYW1lKTsKCQkKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4odGVtcCk7IC8vcXdlcnR5CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGxpc3QpOyAvL1tmb28sIGJhciwgbG9sXQoJfQoJc3RhdGljICBBbHBoYSByZW1vdmVBbmRHZXQoU3RyaW5nIG5hbWUpIHsKCQlBbHBoYSByZXN1bHQgPSBudWxsOwoJCUl0ZXJhdG9yPEFscGhhPiBpdGVyYXRvciA9IGxpc3QuaXRlcmF0b3IoKTsKCQl3aGlsZShpdGVyYXRvci5oYXNOZXh0KCkpIHsKCQkJQWxwaGEgYSA9IGl0ZXJhdG9yLm5leHQoKTsKCQkJaWYobmFtZS5lcXVhbHMoYS5nZXROYW1lKCkpKSB7CgkJCQkvL9GC0LDQuiDQsdGD0LTQtdGCINC/0YDQuNGB0LLQvtC10L0g0L/QvtGB0LvQtdC00L3QuNC5INC90LDQudC00LXQvdC90YvQuSDRjdC70LXQvNC10L3RggoJCQkJLy/QtdGB0LvQuCDQstCw0LbQvdC+INCy0YvQsdGA0LDRgtGMINC/0LXRgNCy0YvQuSwg0YLQviDQvdGD0LbQvdC+INC00L7QsdCw0LLQuNGC0Ywg0L/RgNC+0LLQtdGA0LrRgyDQvdCwIG51bGwKCQkJCXJlc3VsdCA9IGE7IAoJCQkJaXRlcmF0b3IucmVtb3ZlKCk7CgkJCX0KCQl9CgkJcmV0dXJuIHJlc3VsdDsKICAgIH0KICAgIHN0YXRpYyBjbGFzcyBBbHBoYSB7CgkJU3RyaW5nIG5hbWU7CgkJQWxwaGEoU3RyaW5nIG5hbWUpIHsKCQkJdGhpcy5uYW1lID0gbmFtZTsKCQl9CgkJU3RyaW5nIGdldE5hbWUoKSB7CgkJCXJldHVybiBuYW1lOwoJCX0KCQlAT3ZlcnJpZGUKCQlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgewoJCQlyZXR1cm4gbmFtZTsKCQl9Cgl9Cn0=