, 09 2017 . 20:33
+
LinkedList?
, !
ArrayList, . , , .
. ArrayList,
tarzan82.
LinkedList, Java 7, , ,
tarzan82 . , .
,
LinkedList ,
List Deque. (
null) . , , (). , . , .

, , .
1.
LinkedList numbers = new LinkedList<>();
LinkedList numbers. (
Integer). .
LinkedList :
// transient ,
//
transient int size = 0;
transient Node first;
transient Node last;
2.
numbers.add(8);
8 . ,
Integer, ,
Integer item , .
LinkedList Node:
private static class Node {
E item;
Node next;
Node prev;
Node(Node prev, E element, Node next) {
this.item = element;
this.next = next;
this.prev = prev;
}
}
, (
size,
first,
last).

, , ..
null, 1, .
:
numbers.add(5);
( 5) ( 8) ,
null.
last:

. 4, ( 0)
null . ( 1), :
3.
numbers.add(1, 13);
LinkedList .
add(index, element),
index , element.
add(element), .
index, , .
index ,
IndexOutOfBoundsException.
,
index , , . 2, .
index size , , , .. 5.
node(index) , , . for ( , ). ( 13), , 8, , 5. :

: , , ( 13), ( 5). :
4.
LinkedList 10 , , , , :

. 5 :
numbers.remove(Integer.valueOf(5));
,
remove(object) , 5
numbers.remove(5);
IndexOutOfBoundsException, .. 5
remove(index).
,
remove(object)? , , . , , . , :

, , :

, . , , . , , ,
unlink(node),
remove(object), .
remove(index),
unlink(node),
unlink(node),
remove(index). , , , :
poll(),
pollFirst(),
remove() removeFirst() unlinkFirst(node),
pollLast() removeLast() unlinkLast(node).
,
LinkedList, , :
- ;
- , null ;
- O(1) , ( );
- O(n) .
LinkedList (JDK 8)
LinkedList

https://habrahabr.ru/post/337558/
:
author AsteriskIT
java
linkedlist