`
pcno1
  • 浏览: 21564 次
社区版块
存档分类
最新评论

[转]Collection接口的总结

JDK 
阅读更多

发一个完全体力活的帖子,是对JDK的中Collection接口的总结,说明全部摘自JDK6.0。


Map接口:
    |
    + -- WeakHashMap: 以弱键 实现的基于哈希表的 Map。在 WeakHashMap 中,当某个键不再正常使用时,将自动移除其条
    |      目。更精确地说,对于一个给定的键,其映射的存在并不阻止垃圾回收器对该键的丢弃,这就使该键成为可终止的,被终
    |      止,然后被回收。丢弃某个键时,其条目从映射中有效地移除,因此,该类的行为与其他的 Map 实现有所不同。此实现
    |      不是同步的。
    |
    + -- TreeMap:该映射根据其键的自然顺序进行排序,或者根据创建映射时提供的 Comparator 进行排序,具体取决于使用的
    |    构造方法。此实现不是同步的。
    |
    + -- HashMap:基于哈希表的 Map 接口的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。(除了      
    |        非同步和允许使用 null 之外,HashMap 类与 Hashtable 大致相同。)此类不保证映射的顺序,特别是它不保证该顺   
    |       序恒久不变。此实现不是同步的。
    |
    +-- SortedMap: 进一步提供关于键的总体排序 的 Map。该映射是根据其键的自然顺序进行排序的,或者根据通常在创建有
         序映射时提供的 Comparator 进行排序。对有序映射的 collection 视图(由 entrySet、keySet 和 values 方法返回
         )进行迭代时,此顺序就会反映出来。要采用此排序方式,还需要提供一些其他操作(此接口是 SortedSet 的对应映
         射)。

 

Collection接口:
    |
    + -- Set接口:一个不包含重复元素的 collection。更正式地说,set 不包含满足 e1.equals(e2) 的元素对 e1 和 e2,并
    |      |     且最多包含一个 null 元素。正如其名称所暗示的,此接口模仿了数学上的 set 抽象。
    |      |
    |      + -- HashSet:此类实现 Set 接口,由哈希表(实际上是一个 HashMap 实例)支持。它不保证 set 的迭代顺序;
    |      |    特别是它不保证该顺序恒久不变。此类允许使用 null 元素。此类为基本操作提供了稳定性能,此实现不是同
    |      |    步的。
    |      |
    |      + -- LinkedHashSet:具有可预知迭代顺序的 Set 接口的哈希表和链接列表实现。此实现与 HashSet 的不同之外在
    |      |    于,后者维护着一个运行于所有条目的双重链接列表。此链接列表定义了迭代顺序,即按照将元素插入到 set
    |      |    中 的顺序(插入顺序)进行迭代。注意,插入顺序不 受在 set 中重新插入的 元素的影响。此实现不是同步
    |      |    的。
    |      |
    |      + -- TreeSet:基于 TreeMap 的 NavigableSet 实现。使用元素的自然顺序对元素进行排序,或者根据创建 set 时
    |           提供的 Comparator 进行排序,具体取决于使用的构造方法。此实现为基本操作(add、remove 和 contains)
    |           提供受保证的 log(n) 时间开销。此实现不是同步的。
    |
    + -- List接口:有序的 collection(也称为序列)。此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户
           |      可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。
           |
           + -- ArrayList:List 接口的大小可变数组的实现。实现了所有可选列表操作,并允许包括 null 在内的所有元素。
           |    除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。(此类大致上等同于
           |    Vector 类,除了此类是不同步的。)每个 ArrayList 实例都有一个容量。该容量是指用来存储列表元素的数
           |    组的大小。它总是至少等于列表的大小。随着向 ArrayList 中不断添加元素,其容量也自动增长。并未指定增
           |    长策略的细节,因为这不只是添加元素会带来分摊固定时间开销那样简单。此实现不是同步的。
           |
           + -- LinkedList:List 接口的链接列表实现。实现所有可选的列表操作,并且允许所有元素(包括 null)。除了实
           |    现 List 接口外,LinkedList 类还为在列表的开头及结尾 get、remove 和 insert 元素提供了统一的命名方
           |    法。这些操作允许将链接列表用作堆栈、队列或双端队列。提供先进先出队列操作(FIFO)。此实现不是同步的。
           |
           + -- Vector:Vector 类可以实现可增长的对象数组。与数组一样,它包含可以使用整数索引进行访问的组件。但是
                ,Vector 的大小可以根据需要增大或缩小,以适应创建 Vector 后进行添加或移除项的操作。此实现是同步的
                。

分享到:
评论

相关推荐

    Java集合框架Collection接口.pdf

    ### Java集合框架Collection接口详解 #### 一、Java集合框架简介 Java集合框架(Java Collection Framework)是Java标准库中的一个重要组成部分,它提供了一系列用于存储和操作数据集合的接口和实现类。这些接口和...

    Collection接口中的常用方法

    ### Collection接口中的常用方法 在Java编程语言中,`Collection`接口是集合框架的基础,它定义了一组对象的无序组合。此接口提供了对集合的基本操作,并被其他具体集合类如`ArrayList`、`LinkedList`等所实现。...

    collection接口的静态方法

    在Java编程语言中,`Collection`接口是所有集合框架的核心,它是...总结,`Collection`接口提供的静态方法极大地增强了我们在处理Java集合时的能力。理解并熟练运用这些方法,能够帮助我们编写出更加高效和灵活的代码。

    java集合Collection总结

    在本总结中,我们将深入探讨Collection接口以及其主要子接口和实现类,通过实例来帮助理解它们的特性和使用场景。 1. **Collection接口**:Collection是所有单元素容器的根接口,它定义了集合的基本操作,如添加...

    11.集合框架001-Collection接口13-16

    总结起来,本教程系列涵盖了Collection接口的基础知识,包括队列、双端队列、优先队列以及HashSet的具体使用。通过理论讲解和实例演示,学习者将能够深入理解Java集合框架的核心概念,并能熟练地在实际编程中运用...

    11.集合框架001-Collection接口21-23

    集合框架001-Collection接口21-23”表明我们将探讨的是集合框架中的Collection接口,以及与之相关的HashMap和TreeMap类。描述中提到的“21-23”可能是指三个视频教程的章节,分别深入分析了HashMap的源码、HashMap的...

    Java之Collection总结

    ### Java之Collection总结 #### 一、集合简介与遍历方式 ##### 1. 集合的作用与定义 集合是一种特殊的数据结构,主要用于存储和管理对象。在Java中,集合是一个容器对象,用于存储一系列对象的引用。集合提供了一...

    Java集合Collection、List、Set、Map使用详解

    Set接口的方法与Collection接口相同,但由于它不允许重复元素,因此没有专门的方法来处理重复性。 ##### 1.5.3 实现原理 - **HashSet**:基于HashMap实现,提供不重复元素的快速访问。 - **TreeSet**:基于TreeMap...

    java 的Collection接口实例详解

    1. **Collection接口的继承结构**: `Collection`接口有两个直接的子接口:`List`和`Set`。`List`接口代表有序的集合,允许包含重复元素,并且有索引。而`Set`接口则代表无序的集合,不允许重复元素。 2. **List...

    Collection使用

    Collection接口定义了存储和操作一组对象的基本方法,如添加元素(add)、删除元素(remove)、检查是否包含特定元素(contains)、获取元素数量(size)等。它是所有集合类的父接口,提供了一个统一的接口来处理不同类型的...

    接口测试线上培训总结1

    在这个线上培训总结中,我们重点讨论了Postman工具的使用以及接口测试的相关概念。 首先,Postman是一款强大的HTTP客户端工具,最初作为Chrome插件存在,用于调试和发送HTTP请求。它支持GET和POST等不同类型的请求...

    java collection framework

    Collection 接口及其子接口** - **Set**: `HashSet`, `TreeSet`, `LinkedHashSet` 等。 - **List**: `ArrayList`, `LinkedList`, `Vector` 等。 - **Queue**: `LinkedList`(也可以作为队列使用),`PriorityQueue...

    java常用集合类总结

    Java集合类可以分为两种:Collection接口和Map接口。Collection接口有两个子接口:List接口和Set接口。List接口是有序的,可以重复元素,常用的实现类有ArrayList和LinkedList。Set接口是无序的,不允许重复元素,...

    java集合总结.pdf

    本文将从Java集合类的基本概念、Collection接口、List接口、Set接口、Map接口等方面详细介绍Java集合类的知识点。 一、Collection接口 Collection接口是Java集合类的顶层接口,定义了集合的基本操作,包括add、...

    java collection总结-流氓版

    本文将对ArrayList、Vector、LinkedList、Map接口中的HashMap和Hashtable进行总结,帮助读者理解它们的特点和使用场景。 ArrayList和Vector都是基于数组实现的列表,它们都实现了List接口。ArrayList是非线程安全的...

    集合 Collection

    #### 八、总结 Java集合框架为Java程序员提供了一个强大、高效且易于使用的数据管理工具箱。通过深入理解和熟练应用集合框架,开发者可以显著提升代码质量和程序性能。无论是初学者还是经验丰富的开发者,都应该...

    Java(Collection_List_Map_Set).rar_java集合类详解

    Collection接口定义了一些基本的操作,如添加元素(add),删除元素(remove),检查元素是否存在(contains)等。实现Collection接口的类主要有ArrayList、LinkedList和HashSet。 ArrayList是一个动态数组,它提供了快速...

    Collection集合习题答案 1

    Collection接口有两个重要的子接口:List和Set。List接口强调元素的有序性和可重复性,其主要实现类有ArrayList(基于数组实现,适合随机访问)和LinkedList(基于链表实现,适合频繁插入和删除)。Set接口则强调...

    《java基础入门》第三版 第七章作业.doc

    * 集合框架的顶层接口是 Collection 接口,继承自该接口的有 List、Set 和 Map 等接口。 二、List 接口 * List 接口是 Collection 接口的一个子接口,用于存储有序的对象集合。 * List 接口的常用方法包括 add()、...

Global site tag (gtag.js) - Google Analytics