[A, B, C]

3. addAll(Collection c):末尾添加集合元素

LinkedList list = new LinkedList<>(Arrays.asList("A"));

List more = Arrays.asList("B", "C");

list.addAll(more);

System.out.println(list);

输出:

[A, B, C]

4. addAll(int index, Collection c):指定位置插入集合

LinkedList list = new LinkedList<>(Arrays.asList("A", "D"));

List toInsert = Arrays.asList("B", "C");

list.addAll(1, toInsert);

System.out.println(list);

输出:

[A, B, C, D]

5. addFirst(E e):添加到头部

LinkedList list = new LinkedList<>(Arrays.asList("B", "C"));

list.addFirst("A");

System.out.println(list);

输出:

[A, B, C]

6. addLast(E e):添加到尾部

LinkedList list = new LinkedList<>(Arrays.asList("A", "B"));

list.addLast("C");

System.out.println(list);

输出:

[A, B, C]

7. offer(E e):尾部添加元素,返回是否成功

LinkedList list = new LinkedList<>();

boolean success = list.offer("X");

System.out.println(success);

System.out.println(list);

输出:

true

[X]

8. offerFirst(E e):头部插入元素

LinkedList list = new LinkedList<>(Arrays.asList("B"));

list.offerFirst("A");

System.out.println(list);

输出:

[A, B]

9. offerLast(E e):尾部插入元素

LinkedList list = new LinkedList<>(Arrays.asList("A"));

list.offerLast("B");

System.out.println(list);

输出:

[A, B]

10. clear():清空链表

LinkedList list = new LinkedList<>(Arrays.asList("A", "B"));

list.clear();

System.out.println(list);

输出:

[]

11. removeFirst():删除并返回第一个元素

LinkedList list = new LinkedList<>(Arrays.asList("A", "B"));

String removed = list.removeFirst();

System.out.println(removed);

System.out.println(list);

输出:

A

[B]

12. removeLast():删除并返回最后一个元素

LinkedList list = new LinkedList<>(Arrays.asList("A", "B"));

String removed = list.removeLast();

System.out.println(removed);

System.out.println(list);

输出:

B

[A]

13. remove(Object o):删除指定对象

LinkedList list = new LinkedList<>(Arrays.asList("A", "B", "C"));

boolean success = list.remove("B");

System.out.println(success);

System.out.println(list);

输出:

true

[A, C]

14. remove(int index):删除指定位置元素

LinkedList list = new LinkedList<>(Arrays.asList("A", "B", "C"));

String removed = list.remove(1);

System.out.println(removed);

System.out.println(list);

输出:

B

[A, C]

15. poll():删除并返回第一个元素(为空返回 null)

LinkedList list = new LinkedList<>(Arrays.asList("A", "B"));

String val = list.poll();

System.out.println(val);

System.out.println(list);

输出:

A

[B]

16. remove():删除并返回第一个元素(为空抛异常)

LinkedList list = new LinkedList<>(Arrays.asList("A", "B"));

String val = list.remove();

System.out.println(val);

System.out.println(list);

输出:

A

[B]

17. contains(Object o):判断是否包含某元素

LinkedList list = new LinkedList<>(Arrays.asList("A", "B"));

System.out.println(list.contains("A"));

System.out.println(list.contains("C"));

输出:

true

false

18. get(int index):获取指定位置的元素

LinkedList list = new LinkedList<>(Arrays.asList("A", "B"));

System.out.println(list.get(1));

输出:

B

19. getFirst():返回第一个元素

LinkedList list = new LinkedList<>(Arrays.asList("A", "B"));

System.out.println(list.getFirst());

输出:

A

20. getLast():返回最后一个元素

LinkedList list = new LinkedList<>(Arrays.asList("A", "B"));

System.out.println(list.getLast());

输出:

B

21. indexOf(Object o):第一次出现的位置

LinkedList list = new LinkedList<>(Arrays.asList("A", "B", "A"));

System.out.println(list.indexOf("A"));

输出:

0

22. lastIndexOf(Object o):最后一次出现的位置

LinkedList list = new LinkedList<>(Arrays.asList("A", "B", "A"));

System.out.println(list.lastIndexOf("A"));

输出:

2

23. peek():返回第一个元素但不移除(为空返回 null)

LinkedList list = new LinkedList<>(Arrays.asList("X", "Y"));

System.out.println(list.peek());

输出:

X

24. element():返回第一个元素但不移除(为空抛异常)

LinkedList list = new LinkedList<>(Arrays.asList("X", "Y"));

System.out.println(list.element());

输出:

X

25. peekFirst():查看第一个元素(null 安全)

LinkedList list = new LinkedList<>(Arrays.asList("A", "B"));

System.out.println(list.peekFirst());

输出:

A

26. peekLast():查看最后一个元素(null 安全)

LinkedList list = new LinkedList<>(Arrays.asList("A", "B"));

System.out.println(list.peekLast());

输出:

B

27. set(int index, E element):设置指定位置元素

LinkedList list = new LinkedList<>(Arrays.asList("A", "B", "C"));

list.set(1, "Z");

System.out.println(list);

输出:

[A, Z, C]

28. clone():克隆列表

LinkedList list = new LinkedList<>(Arrays.asList("A", "B"));

LinkedList cloned = (LinkedList) list.clone();

System.out.println(cloned);

输出:

[A, B]

29. descendingIterator():返回倒序迭代器

LinkedList list = new LinkedList<>(Arrays.asList("A", "B", "C"));

Iterator it = list.descendingIterator();

while (it.hasNext()) {

System.out.print(it.next() + " ");

}

输出:

C B A

30. size():获取链表大小

LinkedList list = new LinkedList<>(Arrays.asList("A", "B", "C"));

System.out.println(list.size());

输出:

3

31. listIterator(int index):从指定位置返回迭代器

LinkedList list = new LinkedList<>(Arrays.asList("A", "B", "C"));

ListIterator it = list.listIterator(1);

while (it.hasNext()) {

System.out.print(it.next() + " ");

}

输出:

B C

32. toArray():转换为 Object 数组

LinkedList list = new LinkedList<>(Arrays.asList("A", "B"));

Object[] arr = list.toArray();

System.out.println(Arrays.toString(arr));

输出:

[A, B]

33. toArray(T[] a):转换为指定类型数组

LinkedList list = new LinkedList<>(Arrays.asList("A", "B"));

String[] arr = list.toArray(new String[0]);

System.out.println(Arrays.toString(arr));

输出:

[A, B]