2013-09-08 9 views
0

Поскольку в API-интерфейсе java для LinkedList существуют методы, такие как: удалить последний узел и вставить узел по определенному индексу в LinkedList .. LinkedList в API должен быть дважды связанным списком, не так ли?Являются ли предопределенные java LinkedLists двунаправленными?

Я пробовал сделать свой собственный единственный связанный список, но из того, что я нашел, было невозможно вставить узел в определенный индекс, и было невозможно удалить последний узел в списке. Итак, если бы я хотел сделать это, я должен создать свой собственный двойной список?

+1

Вы можете в обязательном порядке вставить и удалить последний из списка, связанного по отдельности. – rocketboy

+0

Вы можете мне показать код? – Steven

ответ

5

java.util.LinkedList Javadoc ясно заявляет

двусвязные реализации список интерфейсов List и DEQUE.

Вы должны объявить переменную как LinkedList видеть свои методы, как removeLast().

LinkedList<String> linkedList = new LinkedList<>(); 
... // add stuff 
linkedList.removeLast(); // compiles 

List<String> list = new LinkedList<>(); 
... // add stuff 
list.removeLast(); // doesn't compile 
+1

На самом деле 'removeLast()' поступает из интерфейса 'Deque' http://docs.oracle.com/javase/6/docs/api/java/util/Deque.html#removeLast() Следовательно, вы также можете ссылаться на 'Deque xxx = new LinkedList (); xxx.removeLast(); ' –