Java 集合框架详解:Collection 与 List 核心用法

📅 发布时间:2026/9/4 5:16:24
Java 集合框架详解:Collection 与 List 核心用法
文章目录一、Java 集合框架体系结构二、Collection 集合体系的基本特点三、Collection 接口中的常用方法四、List 接口中的常用方法一、Java 集合框架体系结构Java 集合框架主要可以分为 单列集合 和 双列集合 两大体系单列集合List、Set、Queue 等接口的实现类如 ArrayList、LinkedList、HashSet、TreeSet 等。双列集合Map 接口的实现类如 HashMap、TreeMap 等。二、Collection 集合体系的基本特点1.有的集合允许元素重复有的不允许List允许重复ListStringlistnewArrayList();list.add(Java);list.add(Java);list.add(MySQL);System.out.println(list);// [Java, Java, MySQL]Set不允许重复SetStringsetnewHashSet();set.add(Java);set.add(Java);set.add(MySQL);System.out.println(set);// Java 只会保留一个2. 有的集合有序有的集合无序这里的“有序”通常指元素的存取顺序是否一致。ArrayList有序ListStringlistnewArrayList();list.add(A);list.add(B);list.add(C);System.out.println(list);// [A, B, C]按照 A → B → C 的顺序存入遍历时也是这个顺序。HashSet不保证顺序SetStringsetnewHashSet();set.add(A);set.add(B);set.add(C);System.out.println(set);HashSet不保证遍历顺序与添加顺序一致。三、Collection 接口中的常用方法方法说明boolean add(E e)添加元素boolean addAll(Collection? extends E c)添加另一个集合中的所有元素boolean remove(Object o)删除指定元素boolean removeAll(Collection? c)删除当前集合中所有属于指定集合的元素void clear()清空集合boolean contains(Object o)判断是否包含指定元素boolean containsAll(Collection? c)判断是否包含指定集合中的所有元素int size()获取元素个数boolean isEmpty()判断集合是否为空IteratorE iterator()获取迭代器用于遍历集合示例CollectionStringcollectionnewArrayList();collection.add(Java);collection.add(MySQL);collection.add(Redis);System.out.println(collection.size());// 3System.out.println(collection.contains(Java));// truecollection.remove(MySQL);System.out.println(collection);// [Java, Redis]四、List 接口中的常用方法List 继承自 Collection因此拥有 Collection 中的全部方法。除此之外由于 List 中的元素具有明确的位置顺序可以通过下标操作元素因此提供了一些与索引相关的方法。方法说明void add(int index, E element)在指定位置插入元素boolean addAll(int index, Collection? extends E c)从指定位置开始插入一个集合E get(int index)获取指定下标的元素E set(int index, E element)修改指定下标的元素并返回原元素E remove(int index)删除指定下标的元素并返回被删除元素int indexOf(Object o)获取元素第一次出现的下标int lastIndexOf(Object o)获取元素最后一次出现的下标ListIteratorE listIterator()获取 List 专用迭代器ListE subList(int fromIndex, int toIndex)获取指定范围的子列表void sort(Comparator? super E c)按指定规则排序示例ListStringlistnewArrayList();list.add(Java);list.add(MySQL);list.add(Redis);// 指定位置插入list.add(1,Spring);System.out.println(list);// [Java, Spring, MySQL, Redis]// 获取元素System.out.println(list.get(1));// Spring// 修改元素list.set(1,Spring Boot);// 删除指定位置的元素list.remove(2);System.out.println(list);// [Java, Spring Boot, Redis]