ArrayList和LinkedList都是Java中的集合框架,它们都实现了List接口,但它们的内部实现不同。ArrayList是通过数组实现的,而LinkedList是通过链表实现的。
主要的区别在于它们对于插入和删除操作的效率不同。在ArrayList中,如果需要插入或删除一个元素,需要移动后续的元素,因为ArrayList中的元素是连续存储的。而在LinkedList中,插入或删除一个元素只需要改变前后元素的指针,不需要移动其他元素。
接下来我们看一下ArrayList示例代码:
import java.util.ArrayList;public class ArrayListDemo { public static void main(String[] args) { ArrayList<String> arrayList = new ArrayList<>(); // 添加元素 arrayList.add("A"); arrayList.add("B"); arrayList.add("C"); arrayList.add("D"); // 在指定位置插入元素 arrayList.add(2, "E"); // 删除元素 arrayList.remove("B"); // 遍历元素 for (String str : arrayList) { System.out.print(str + " "); } }}
LinkedList示例代码:
import java.util.LinkedList;public class LinkedListDemo { public static void main(String[] args) { LinkedList<String> linkedList = new LinkedList<>(); // 添加元素 linkedList.add("A"); linkedList.add("B"); linkedList.add("C"); linkedList.add("D"); // 在指定位置插入元素 linkedList.add(2, "E"); // 删除元素 linkedList.remove("B"); // 遍历元素 for (String str : linkedList) { System.out.print(str + " "); } }}
这两个示例代码都展示了对于集合的添加、插入、删除和遍历操作,但它们的内部实现方式不同,所以它们的执行效率也会有所不同。
本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/261713.html
如有侵犯您的合法权益请发邮件951076433@qq.com联系删除