diff --git a/s-day03/src/com/inmind/list01/LinkedListDemo04.java b/s-day03/src/com/inmind/list01/LinkedListDemo04.java index 695acb0..68e3490 100644 --- a/s-day03/src/com/inmind/list01/LinkedListDemo04.java +++ b/s-day03/src/com/inmind/list01/LinkedListDemo04.java @@ -8,9 +8,51 @@ LinkedList的特点和基本使用 LinkedList是List接口的实现类,它的集合特点: 存取有序,有索引数据,可以重复 LinkedList底层数据结构是双向链表,它的数据结构的特点:1.查询慢 2.增删快 注意:当对很多数据要进行增删操作时,而不是就用来查询,那就使用LinkedList,反之ArrayList +------------------------------------------------ +LinkedList底层采用双向链表,它对于头尾操作的效率较高,所以该类提供了高效头尾操作的api + + 8.LinkedList独有的方法 + public void addFirst(E e) :将指定元素插入此列表的开头。 + public void addLast(E e) :将指定元素添加到此列表的结尾。 + + public E getFirst() :返回此列表的第一个元素。 + public E getLast() :返回此列表的最后一个元素。 + + public E removeFirst() :移除并返回此列表的第一个元素。 + public E removeLast() :移除并返回此列表的最后一个元素。 + + //模仿栈结构的api(操作双向链表的第一个数据) + public E pop() :从此列表所表示的堆栈处弹出一个元素。 + public void push(E e) :将元素推入此列表所表示的堆栈。 + + */ public class LinkedListDemo04 { public static void main(String[] args) { + LinkedList lists = new LinkedList(); + lists.add("刘备"); + lists.add("关羽"); + lists.add("张飞"); + System.out.println(lists); + System.out.println("-------------------独有方法------------------------"); + //public void addFirst(E e) :将指定元素插入此列表的开头。 + //public void addLast(E e) :将指定元素添加到此列表的结尾。 + lists.addFirst("孙权"); + lists.addLast("吕布"); + System.out.println(lists); + //public E getFirst() :返回此列表的第一个元素。 + //public E getLast() :返回此列表的最后一个元素。 + System.out.println(lists.getFirst()); + System.out.println(lists.getLast()); + + //public E removeFirst() :移除并返回此列表的第一个元素。 + //public E removeLast() :移除并返回此列表的最后一个元素。 + lists.removeFirst(); + lists.removeLast(); + System.out.println(lists); + + } + public static void method(String[] args) { LinkedList list = new LinkedList<>(); list.add("杨幂"); list.add("迪丽热巴");