Я пытаюсь сделать стек из arraylist'ов, но созданный мною хранит только ссылку на объект, который в него добавили, а я хочу, чтобы он хранил сам объект и размер(и содержимое) unitPaths не менялось при изменении path
Dot a = new Dot();
Deque<ArrayList> unitPaths = new ArrayDeque<ArrayList>();
ArrayList<Dot> path = new ArrayList();
unitPaths.push(path);
println(unitPaths.peek().size()); //printing 2
path.add(a);
path.add(a);
println(unitPaths.peek().size()); //printing 4
unitPaths.push(new ArrayList<Dot>(path), но это тоже не помогло , хотя я создаю уже новый, казалось бы, ArrayList. – ramazan793 Jan 20 '18 at 10:18ArrayDequeдобавлять новыйArrayList, созданный черезnew ArrayList<>(старый_arraylist), то вроде всё работает. – diralik Jan 20 '18 at 10:45path = unitsPath.peek()и получается, что каждый раз меняя path, я менял unitsPath.peek(). Ок, нужно былоpath = new ArrayList(unitsPath.peek()). Спасибо. – ramazan793 Jan 20 '18 at 11:53