• 【JAVA】【集合4】Java中的Collection接口


    【集合】Collection

    一、Collection定义

    Collection是一个接口,其在java.util.Collection中定义。

    public interface Collection<E> extends Iterable<E>
    

    二、Collection定义的接口

    1. 增加元素

    (1)指定参数增加1个元素

    boolean add(E e);
    

    (2)参数为1个集合,添加集合参数内包含的所有内容

    boolean addAll(Collection<? extends E> c);
    

    2. 删除元素

    (1)删除指定的单个元素

    boolean remove(Object o);
    

    (2)参数为1个集合,删除集合参数内包含的所有元素

    boolean removeAll(Collection<?> c);
    

    (3)与removeAll方法相反。参数为1个集合,删除不存在于集合参数内的其他元素

    boolean retainAll(Collection<?> c);
    

    (4)根据过滤器删除

    boolean removeIf(Predicate<? super E> filter)
    

    (5)清空集合

    void clear();
    

    3. 查找元素

    (1)参数1个元素,判断指定元素是否在集合中是否存在。返回boolean类型。

    boolean contains(Object o);
    

    (2)参数1个集合,判断 参数集合 的内容 在集合中是否存在。返回boolean类型。

    boolean containsAll(Collection<?> c);
    

    4. 遍历集合

    (1)获取集合的迭代器

    Iterator<E> iterator();
    

    5. 集合大小

    (1)获取集合大小。如:集合clear()后,其大小是0

    int size();
    

    (2)判断集合是否为空,返回boolean类型。

    boolean isEmpty();
    

    7. 把集合转换为数组

    (1)把集合转化成一个数组副本,返回

    注(具体在后续各结合类实现中):

    • 如果迭代器能保证特定的顺序,数组就有相同的顺序。
    • 得到的数组是个副本,而不是内部数据结构的引用。
    Object[] toArray();
    

    (2)把集合中的元素存入参数指定的数组,返回

    <T> T[] toArray(T[] a);
    

    【重要!!!!】: T[] toArray(T[] a)中T[] a参数说明:

    • T[] a参数采用new 长度为0方式,则此方法效果同toArray(),会新分配数组存储空间
    String[] y = x.toArray(new String[0]);
    
    • T[] a参数如果集合的元素足够大,则要存储到参数指定的数组;否则,将为此分配一个相同类型的新数组

    如:如下将list转换为数组时最佳SIZE (A)

    ​ List list = new ArrayList<>(DEFAULT_CAPACITY);

    ​ list.add("1");

    ​ list.add("2");

    ​ String[] array = list.toArray(new String[SIZE]);

    ​ A、0 B、1 C、2 D、3


  • 相关阅读:
    Calculate every items’ quantity for each transaction type
    FW: Introduction to Change Data Capture (CDC) in SQL Server 2008
    过滤数据源,只显示那些符合条件的数据
    首日封, DAX
    X++中的subStr
    How to Compare two layer’s object: Get AOT objects both modified in USR & SL1 layer
    AX: grid中添加checkbox, edit 方法
    FW: Loading XML Data into SQL Server (SQL Spackle)
    How to get Record count?

  • 原文地址:https://www.cnblogs.com/yickel/p/14793554.html
Copyright © 2020-2023  润新知