fork download
  1. import java.util.*;
  2. class Ideone {
  3. static List<Alpha> list;
  4. public static void main (String[] args) {
  5. String name = "qwerty";
  6. list = new ArrayList<>(Arrays.asList(new Alpha("foo"), new Alpha(name),
  7. new Alpha("bar"), new Alpha("lol")));
  8.  
  9. Alpha temp = removeAndGet(name);
  10.  
  11. System.out.println(temp); //qwerty
  12. System.out.println(list); //[foo, bar, lol]
  13. }
  14. static Alpha removeAndGet(String name) {
  15. Alpha result = null;
  16. Iterator<Alpha> iterator = list.iterator();
  17. while(iterator.hasNext()) {
  18. Alpha a = iterator.next();
  19. if(name.equals(a.getName())) {
  20. //так будет присвоен последний найденный элемент
  21. //если важно выбрать первый, то нужно добавить проверку на null
  22. result = a;
  23. iterator.remove();
  24. }
  25. }
  26. return result;
  27. }
  28. static class Alpha {
  29. String name;
  30. Alpha(String name) {
  31. this.name = name;
  32. }
  33. String getName() {
  34. return name;
  35. }
  36. @Override
  37. public String toString() {
  38. return name;
  39. }
  40. }
  41. }
Success #stdin #stdout 0.06s 2184192KB
stdin
Standard input is empty
stdout
qwerty
[foo, bar, lol]