• Java学习关于集合框架的基础接口--Collection接口


       集合框架(Collection  Framework)是Java最强大的子系统之一,位于java.util 包中。集合框架是一个复杂的接口与和类层次,提供了管理对象组的最新技术。Java集合框架标准化了程序处理对象组的方式。

      集合框架在设计上需要满足几个目标。首先,框架必须是高性能的。基本集合(动态数组、链表、树以及哈希表)的实现是高效率的。很少需要手动编写这些数据引擎中的某一个。其次,框架必须允许不同类型的集合以类似的方式进行工作,并且具有高度的互操作性。再次,扩展或改造必须易于实现。为了满足这些目标,整个集合框架基于一套标准接口进行构造,提供了这些接口的一些可以直接使用的标准实现(如LinkedList、HashSet和TreeSet)。作为一种选择,也可以实现自己的集合。为了方便,提供各种特定目的的实现。最后,必须添加可以将标准数组集成到集合框架中的机制。

      算法是集合机制的另外一个重要组成部分。算法操作集合,并且被定义为Collections类中的静态方法。因此,所有集合都可以使用它们。

      与集合框架密切相关的另一个内容是 Iterator 接口。迭代器为访问集合中的元素提供了通用、标准的方式,每次访问一个元素。因为每个集合都提供了迭代器,所以可以通过Iterator定义的方法访问所有集合类的元素。

      Collection接口是构建集合框架的基础,因为定义集合的所有类都必须实现该接口,Collection是泛型接口

      public interface Collection<E> extends Iterable<E>
    其中,E指定了集合中存储的对象类型。Collection接口扩展了 Iterator 接口。
    方法说明
    boolean  add(E e)
    确保此集合包含指定的元素(可选操作)。
    boolean addAll(Collection<? extends E> c)
    将指定集合中的所有元素添加到此集合(可选操作)。
    void  clear()
    从此集合中删除所有元素(可选操作)。
    boolean   contains(Object o)
    如果此集合包含指定的元素,则返回 true
    boolean   containsAll(Collection<?> c)
    如果此集合包含指定 集合中的所有元素,则返回true。
    boolean   equals(Object o)
    将指定的对象与此集合进行比较以获得相等性。
    int    hashCode()
    返回此集合的哈希码值。
    boolean    isEmpty()
    如果此集合不包含元素,则返回 true 。 
    boolean   remove(Object o)                                 
    从该集合中删除指定元素的单个实例(如果存在)(可选操作)。移除返回true
    boolean    removeAll(Collection<?> c)
    删除指定集合中包含的所有此集合的元素(可选操作)。
    default boolean removeIf(Predicate<? super E> filter)
    删除满足给定谓词的此集合的所有元素。
    boolean    retainAll(Collection<?> c)
    仅保留此集合中包含在指定集合中的元素(可选操作)。
    int     size()
    返回此集合中的元素数。 
    Object[]    toArray()                                            
    返回一个包含此集合中所有元素的数组。
    <T> T[]    toArray(T[] a)
    返回包含此集合中所有元素的数组; 返回的数组的运行时类型是指定数组的运行时类型。

    方法详细信息

    • toArray

      Object[] toArray()
      返回一个包含此集合中所有元素的数组。 如果此集合对其迭代器返回的元素的顺序做出任何保证,则此方法必须以相同的顺序返回元素。返回的数组将是“安全的”,因为该集合不保留对它的引用。 (换句话说,这个方法必须分配一个新的数组,即使这个集合是由数组支持的)。 因此,调用者可以自由地修改返回的数组。此方法充当基于阵列和基于集合的API之间的桥梁。结果一个包含此集合中所有元素的数组 
    • clear

      void clear()

      从此集合中删除所有元素(可选操作)。 此方法返回后,集合将为空。异常  UnsupportedOperationException - 如果此 集合不支持clear操作 

    • add

    boolean add(E e)
      确保此集合包含指定的元素(可选操作)。 如果此集合由于调用而更改,则返回true 。 (如果此集合不允许重复,并且已包含指定的元素,则返回false。 )支持此操作的集合可能会限制可能添加到此集合的元素。 特别是一些集合拒绝添加null种元素,和其他人将强加可添加元素的类型限制。 收集类应在其文档中明确说明可能添加哪些元素的限制。

    如果一个集合拒绝添加一个特定的元素,除了它已经包含该元素之外,它必须抛出异常(而不是返回false )。 这保留了一个集合在此调用返回后始终包含指定元素的不变量。

    参数e - 要确保在此集合中的存在的元素
      结果   true如果此集合由于调用而更改
    异常
    UnsupportedOperationException - 如果此 集合不支持add操作
    ClassCastException - 如果指定元素的类阻止将其添加到此集合
    NullPointerException - 如果指定的元素为空,并且该集合不允许空元素
    IllegalArgumentException - 如果元素的某些属性阻止其添加到此集合
    IllegalStateException - 如果由于插入限制,此时无法添加该元素 

     

  • 相关阅读:
    主流编程语言
    计算机语言
    IT(Information technology)
    设计模式-学习
    Java 执行顺序
    学习大纲
    Springboot注解整理 二《自定义注解》
    IntelliJ IDE 基础经验备案三
    IntelliJ IDE 基础经验备案二
    Mybatis使用经验归档
  • 原文地址:https://www.cnblogs.com/sdlzspl/p/7236877.html
Copyright © 2020-2023  润新知