LinkedList是Java中一种常用的数据结构,它使用双向链表实现。
特点:
高效的插入和删除操作:LinkedList在列表的头部和尾部进行添加和删除操作的复杂度为O(1),高效且方便。
动态大小:LinkedList的大小可以根据需要自动调整,无需手动分配内存。
支持null元素:LinkedList允许插入和删除null元素。
迭代顺序:LinkedList的迭代器按照链表的插入顺序进行迭代。
LinkedList适用于需要频繁插入和删除元素的情况,但LinkedList不支持随机访问,获取元素的复杂度为O(n),因此如果需要频繁访问元素,建议使用ArrayList。
LinkedList可以通过Node类实现,每个节点包含一个数据域和两个指针,分别指向前一个节点和后一个节点。LinkedList类中维护了一个头节点和尾节点的指针,方便进行添加和删除操作。
JDK中LinkedList的方法:
boolean add(E e) //尾插e void add(int index,E element) //将e插入到index位置 boolean addAll(Collection<? extends E> c) //尾插c中的元素 E remove(int index) //删除Index位置的元素 boolean remove(Object o) //删除遇到的第一个o E get(int index) //获取下标index位置的元素 E set(int index,E element) //将下标为index位置的元素设置为element void clear() //清空 boolean contains(Object o) //判断o是否在线性表中 int indexOf(Object o) //返回第一个o所在下标 int lastIndexOf(Object o) //返回最后一个o所在下标 List<E>subList(int fromIndex,int toIndex) //截取部分list
方法实现代码示例:
import java.util.LinkedList; public class LinkedListExample { public static void main(String[] args) { // 创建一个空的LinkedList LinkedList<String> list = new LinkedList<String>(); // 在列表的头部添加元素 list.addFirst("Hello"); // 在列表的尾部添加元素 list.addLast("World"); // 在列表的指定位置插入元素 list.add(1, "Java"); // 获取列表的大小 int size = list.size(); System.out.println("Size: " + size); // 获取列表中的元素 String element = list.get(0); System.out.println("Element at index 0: " + element); // 删除列表中的元素 list.remove(1); System.out.println("After removing element at index 1:"); for (String s : list) { System.out.println(s); } } }标签:index,LinkedList,int,元素,list,element From: https://www.cnblogs.com/kandh/p/17871981.html