import java.util.LinkedList;
/**
-
LinkedList集合:有序,有索引,可重复,基于链表的实现,查询慢,增删快。(双链表)
-
链表结构的首尾可以直接定位,所以LinkedList的首尾操作性能是比较好的。
-
LinkedList提供了许多首尾元素操作的功能API
-
-----addFirst(E e):将指定元素插入此列表的开头。
-
-----addLast(E e):将指定味素出入此列表的结尾。
-
-----getFirst(E e):返回此列表中的第一个元素。
-
-----getLast(E e):返回此列表中的最后一个元素。
-
-----removeFirst(E e):移除并返回此列表的第一个元素。
-
-----removeLast(E e):移除并返回此列表的最后一个元素。
-
-----pop():从此列表所表示的堆栈处,弹出一个元素。
-
-----push():将此元素,推入,此列表中表示的堆栈。
-
-----isEmpty():如果列表包含元素,返回true。
-
总结:
-
如果经常要对数据的前后元素进行增删操作,可以选择LinkedList集合。
-
如果需要进行大量的元素查询或者遍历,而增删比较少的情况下,应该选择ArrayList集合。
-
开发中用的最多的是ArrayList集合。
-
*/
public class Demo05_Day03_List系列集合_LinkedList的使用 {public static void main(String[] args) {
//定义,创建LinkedList集合。
//1.做栈。
LinkedList list=new LinkedList<>();//压栈,入栈。 list.push("一号"); list.push("二号"); list.push("三号"); list.push("四号"); //出栈,弹栈。 System.out.println(list.pop()); System.out.println(list.pop()); System.out.println(list); //2.做队列。 LinkedList<String> lists=new LinkedList<>(); //入队 lists.addLast("张三"); lists.addLast("李四"); lists.addLast("王五"); lists.addLast("赵六"); System.out.println(lists); //出队。 System.out.println(lists.removeFirst()); System.out.println(lists.removeFirst()); System.out.println(lists.removeFirst());
}
}