LinkedList
Java 链表 LinkedList。 LinkedList 实现了 List 接口, 也实现了 Queue 接口, 也就是说 Java 内置的 LinkedList 既可以当作 List 来用, 也可以当作 Queue 来用。
LinkedList 用作 List
List 的创建: List<数据类型> 变量名 = new LinkedList<>();
Java 中的链表特性通常不会直接暴露给用户, 而是通过 List 这个接口来对外展示的, 所以创建链表时使用List 打头,new 的时候才展现出这个 List 底层是由 LinkedList 实现的。
List<Integer> ls=new LinkedList<>();
链表常用的方法有 add, set, remove, contains, isEmpty, size 等
List<Integer> ls=new LinkedList<>();
ls.add(2);
ls.add(3);
ls.add(4);
ls.add(0,1);
System.out.println(ls);//[1, 2, 3, 4]
System.out.println(ls.get(0));// 1
ls.set(0,-1);
System.out.println(ls);//[-1, 2, 3, 4]
ls.remove(3);
System.out.println(ls);//[-1, 2, 3]
if (ls.contains(3)){
System.out.println("链表含有 3");
}
if (ls.isEmpty()){
System.out.println("链表含为空");
}else {
System.out.println("链表不为空");
}
System.out.println("链表长度: "+ls.size());
LinkedList 用作 Queue
LinkedList 的创建: List<数据类型> 变量名 = new LinkedList<>();
Java 中的链表特性通常不会直接暴露给用户, 而是通过 Queue 这个接口来对外展示的, 所以创建链表时使用Queue打头,new 的时候才展现出这个Queue 底层是由 LinkedList 实现的。
用作 Queue 常用方法有 add,peek, poll, contains, isEmpty, size 等
Queue<Integer> queue =new LinkedList<>();
queue.add(1);
queue.add(2);
queue.add(3);
System.out.println(queue);// 输出 [1, 2, 3]
//获取队首
System.out.println(queue.peek());//输出 1
//取出队首
System.out.println(queue.poll());//输出 1
if (queue.contains(3)){
System.out.println("队列含有 3");//输出 队列含有 3
}
if (queue.isEmpty()){
System.out.println("队列为空");
}else {
System.out.println("队列不为空");//输出 队列不为空
}
System.out.println("队列长度: "+queue.size());//输出 队列长度: 2
更多关于 LinkedList 的 API 可以访问 Java 官方文档
关于LinkedList 底层实现细节, 可以访问我的 github 仓库
Last updated
Was this helpful?