List特有方法
经典多态写法
// 经典的多态写法
List<String> list = new ArrayList<>();
常用API:增删改查
// 添加元素
list.add("Java");
// 添加元素到指定位置
list.add(0, "Python");
// 获取元素
String s = list.get(0);
// 修改元素
list.set(0, "C++");
// 删除元素
list.remove(0);
ArrayList底层原理
什么是链表
LinkedList
LinkedList是基于
双向
链表实现的
因为LinkedList能够快速定位
首尾元素
,所以他有很多关于首尾的方法
适用场景一:设计队列
// 适用LinkedList实现队列
LinkedList<String> linkedList = new LinkedList<>();
// 入队
linkedList.add("Java");
linkedList.add("Python");
// 出队
String first = linkedList.removeFirst();
System.out.println(linkedList);
实现场景2:设计栈
// 使用LinkedList实现栈
LinkedList<String> stack = new LinkedList<>();
// 入栈
stack.push("Java");
stack.push("Python");
// 出栈
String pop = stack.pop();
System.out.println(stack);