LinkedList初认识
- LinkedList特点
1、存入和读取的顺序一致
2、元素可以重复
3、所有内部元素的操作都基于双向链表的需要进行 - 创建LinkedList对象
LinkedList linkedList=new LinkedList()
- LinkedList常用的几种方法
1、add方法
import java.util.LinkedList;
public class LinkedList1 {
public static void main(String[] args) {
LinkedList linkedList = new LinkedList();
linkedList.add("first");
linkedList.add("second");
linkedList.add("third");
System.out.println(linkedList);//add在链表后面添加元素
linkedList.addFirst("zero");
System.out.println(linkedList);//addFirst在链表的开头添加元素
linkedList.addLast("four");
System.out.println(linkedList);//addLast在链表的末尾加上元素
linkedList.add(2, "add");
System.out.println(linkedList);//因为元素从0开始,所以2所指代的位置时第三位
}
}
代码结果为:
[first, second, third]
[zero, first, second, third]
[zero, first, second, third, four]
[zero, first, add, second, third, four]
2、get方法
import java.util.LinkedList;
public class LinkedList2 {
public static void main(String[] args) {
LinkedList linkedList = new LinkedList();
linkedList.add("first");
linkedList.add("second");
linkedList.add("third");
System.out.println(linkedList);
linkedList.get(2);
System.out.println(linkedList.get(2));//获取第三个元素
linkedList.getFirst();//获取第一个元素
System.out.println(linkedList.getFirst());
linkedList.getLast();//获取最后一个元素
System.out.println(linkedList.getLast());
}
}
运行结果如下:
[first, second, third]
third
first
third
3、offer方法
import java.util.LinkedList;
public class LinkedList3 {
public static void main(String[] args) {
LinkedList linkedList = new LinkedList();
linkedList.add("first");
linkedList.add("second");
linkedList.add("third");
System.out.println(linkedList);
linkedList.offer("four");//在链表后面加上元素,跟add类似
System.out.println(linkedList);
linkedList.offerFirst("zero");//在链表前面加上元素,跟addFirst类似
System.out.println(linkedList);
linkedList.offerLast("five");//在链表后结尾加上元素,跟addLast类似
System.out.println(linkedList);
}
}
运行结果如下:
[first, second, third]
[first, second, third, four]
[zero, first, second, third, four]
[zero, first, second, third, four, five]
4、peek方法
import java.util.LinkedList;
public class LinkedList4 {
public static void main(String[] args) {
LinkedList linkedList = new LinkedList();
linkedList.add("first");
linkedList.add("second");
linkedList.add("third");
System.out.println(linkedList);
linkedList.peek();//获取第一个元素,但不移除
System.out.println(linkedList.peek());
linkedList.peekFirst();//获取第一个元素,但不移除
System.out.println(linkedList.peekFirst());
linkedList.peekLast();//获取最后一个元素,但不移除
System.out.println(linkedList.peekLast());
System.out.println(linkedList);//因为peek方法获取元素不移除,所以链表依然原样输出
}
}
运行结果如下:
[first, second, third]
first
first
third
[first, second, third]
5、pop方法
import java.util.LinkedList;
public class LinkedList5 {
public static void main(String[] args) {
LinkedList linkedList = new LinkedList();
linkedList.add("first");
linkedList.add("second");
linkedList.add("third");
System.out.println(linkedList);
linkedList.pop();//查询并移除第一个元素
System.out.println(linkedList);
linkedList.poll();//查询并移除第一个元素
System.out.println(linkedList);
System.out.println(linkedList);//因为移除了第一个元素,所以链表会有删减
}
}
运行结果如下:
[first, second, third]
[second, third]
[third]
[third]
6、remove方法
import java.util.LinkedList;
public class LinkedList5 {
public static void main(String[] args) {
LinkedList linkedList = new LinkedList();
linkedList.add("first");
linkedList.add("second");
linkedList.add("third");
linkedList.add("four");
linkedList.add("five");
linkedList.add("six");
System.out.println(linkedList);
linkedList.remove();//移除第一个元素
System.out.println(linkedList);
linkedList.remove("second");//移除two这个元素
System.out.println(linkedList);
linkedList.remove(2);//移除第三个元素
System.out.println(linkedList);
linkedList.removeFirst();//移除第一个元素
System.out.println(linkedList);
linkedList.removeLast();//移除最后一个元素
System.out.println(linkedList);
System.out.println(linkedList);
}
}
运行结果如下:
[first, second, third, four, five, six]
[second, third, four, five, six]
[third, four, five, six]
[third, four, six]
[four, six]
[four]
[four]
以上就是链表的几种常用的方法