本文共 1714 字,大约阅读时间需要 5 分钟。
ArrayList [重点]
基于数组的动态数组实现,查询操作效率高,增删操作效率较低;
JDK1.2版本后发布,性能较为优化,运行效率较高,但线程不安全;
适用于需要频繁查找和遍历操作的场景,但插入和删除操作时数组扩展需要频繁,导致性能瓶颈。
List的常用优点
最常用的实现类之一,基于动态数组机制,支持快速随机访问和迭代操作,适合用于数据存储和业务逻辑处理。
public class TestArraylist { public static void main(String[] args) { // 创建 ArrayList 实例 ArrayList ary = new ArrayList(); // 添加元素 Student s = new Student("张三", 12); Student s1 = new Student("李四", 11); Student s2 = new Student("王五", 14); ary.add(s); ary.add(s1); ary.add(s2); // 查看集合元素个数 System.out.println("当前元素个数为:" + ary.size()); System.out.println("ArrayList 内容:" + ary.toString()); // 删除指定元素 System.out.println("\n删除操作:"); System.out.println("元素是否存在:" + ary.contains(new Student("张三", 12))); if (ary.remove(new Student("张三", 12))) { System.out.println("已删除一名学生!"); } else { System.out.println("未找到该学生,无法删除。"); } // 迭代器操作 System.out.println("\n使用迭代器进行遍历:"); ListIterator lis = ary.listIterator(); System.out.println("正序遍历:"); while (lis.hasNext()) { Student student = (Student) lis.next(); System.out.println("当前遍历到的学生对象:" + student); } System.out.println("逆序遍历:"); while (lis.hasPrevious()) { Student student = (Student) lis.previous(); System.out.println("正在返回的学生对象:" + student); } // 其他常用操作 System.out.println("\n元素是否存在:" + ary.contains(new Student("张三", 12))); System.out.println("是否为空:" + ary.isEmpty()); System.out.println("元素索引位置:" + ary.indexOf(new Student("张三", 12))); }
转载地址:http://wpntz.baihongyu.com/