zoukankan      html  css  js  c++  java
  • 详解 Collection集合

    (请关注 本人“集合总集篇”博文——《详解 集合框架》

    首先,本人来讲解下 Collection集合的继承体系

    Collection集合 的继承体系:

    Collection接口是集合框架 的 顶层接口之一,而Collection接口的继承体系如下所示:

    父接口:

    • Iterable接口

    子接口:

    • List泛型接口,
    • BeanContext,
    • BeanContextServices,
    • BlockingDeque泛型接口,
    • BlockingQueue泛型接口,
    • Deque泛型接口,
    • NavigableSet泛型接口
    • Queue泛型接口
    • Set泛型接口
    • SortedSet泛型接口

    子实现类:

    • ArrayList
    • LinkedList
    • Vector
    • HashSet
    • LinkedHashSet,
      TreeSet
      AbstractCollection, AbstractList, AbstractQueue, AbstractSequentialList, AbstractSet, ArrayBlockingQueue, ArrayDeque, AttributeList, BeanContextServicesSupport, BeanContextSupport, ConcurrentLinkedQueue, ConcurrentSkipListSet, CopyOnWriteArrayList, CopyOnWriteArraySet, DelayQueue, EnumSet, JobStateReasons, LinkedBlockingDeque, LinkedBlockingQueue, PriorityBlockingQueue, PriorityQueue, RoleList, RoleUnresolvedList, Stack, SynchronousQueue,

    上示为Collection接口的 实现类 和 子接口。
    但是,在我们今后的学习工作过程中,主要应用的 实现类 和 子接口 如下:

    在这里插入图片描述


    Collection集合 的常用API:

    本人现在按照功能来介绍一下这个接口的API,以便后续内容的讲解:

    1. 添加功能
    • boolean add(Object obj):
      添加一个元素
    • boolean addAll(Collection c):
      添加一个集合的元素 (给一个集合添加进另一个集合中的所有元素)
    1. 删除功能
    • void clear():移除所有元素
    • boolean remove(Object o):
      移除一个元素
    • boolean removeAll(Collection c):
      移除一个集合的元素(移除一个以上返回的就是true) 删除的元素是两个集合的交集元素 如果没有交集元素
      删除失败 返回false
    1. 判断功能
    • boolean contains(Object o):
      判断集合中是否包含指定的元素
    • boolean containsAll(Collection c):
      判断集合中是否包含指定的集合元素
      (这个集合 包含 另一个集合中所有的元素才算包含 才返回true)
      比如:1,2,3 containsAll 1,2=true
      1,2,3 containsAll 2,3,4=false
    • boolean isEmpty():
      判断集合是否为空
    1. 把集合转换为数组
    • Object[] toArray()
    1. 长度功能
    • int size():元素的个数
    1. 交集功能
    • boolean retainAll(Collection c):获取两个集合的交集元素(交集:两个集合都有的元素)
    1. 获取功能
    • Iterator iterator()(重点)

    那么,如果我们想要遍历一个集合,按照我们之前的手段,肯定是先把集合转换成一个数组,然后遍历这个数组。

    但是,这样一来,在特定的情况下,是很麻烦的
    所以Java提供了一个机制来解决这个问题 —— 迭代器


    迭代器:

    请关注本人博文——《详解 迭代器 —— Iterator接口、 ListIterator接口 与 并发修改异常》


    那么,现在,本人来通过两篇博文来分别讲解下 Collection集合的继承体系中 两个重要子接口 —— List接口Set接口

    List接口:

    请关注本人博文《详解 List接口》


    Set接口:

    请关注本人博文《详解 Set接口》


    那么,本篇博文的主要内容就讲解完了,若是对上述知识点或代码有任何疑惑、意见或者建议,请在下方评论区提出,本人将尽早予以答复,觉得有所帮助的同学请留下小赞赞,谢谢!!!

    (集合总集篇链接:https://www.cnblogs.com/codderYouzg/p/12416560.html

  • 相关阅读:
    按钮-全选复选框 PENGHAO
    ASP.NET技术内幕的电子书中文版 PENGHAO
    hotmail和gmail 邮件中背景图片无效不显示的解决办法
    Silverlight之DataGrid的列格式化日期
    MS SQL基础
    JS获得当前地址栏url
    Javascript实现复制到剪贴板
    C#.NET画验证码与Cookie验证
    网站部署与定制
    操作SQL数据库常用语句
  • 原文地址:https://www.cnblogs.com/codderYouzg/p/12416566.html
Copyright © 2011-2022 走看看