Пытаюсь самостоятельно разобраться с задачей, но упёрся в какую то стену. Понимаю что ошибка скорее всего в логике. Не могу её увидеть. Кажется как будто метод должен работать корректно, но нет. Что я сделал не так?
public void add(String value) {
//напишите тут ваш код
Node lastNode = new Node();
if(first.next == null){
last.next = lastNode;
last.prev = first;
last.value = value;
first.next = last;
last = lastNode;
} else { last.value = value;
last.next = lastNode;
lastNode.prev = last;
}
}
Во первых сразу после создания нового объекта присвой ему значение далее в теле условия (if(first.next == null)) надо передать ссылку на новый объект в поле next объекта first. Иначе(else) ссылку на самый последний объект т.е. last.prev присваиваешь переменной prev вновь созданного объекта lastNode , переменной next, объекта на который сейчас ссылается переменная prev вновь созданного объекта(lastNode), присвой ссылку на новый объект , и после всех условий, присвой переменной prev, объекта last, ссылку на вновь созданный объект