Java
Java集合

Java集合17 - Set架构

简介:集合是Java中非常重要而且基础的内容,因为任何数据必不可少的就是该数据是如何存储的,集合的作用就是以一定的方式组织、存储数据。

前面,我们已经系统的对List和Map进行了学习,接下来我们开始可以学习Set。相信经过Map的了解之后,学习Set会容易很多。毕竟Set的实现类都是基于Map来实现的(HashSet是通过HashMap实现的,TreeSet是通过TreeMap实现的)。

首先,我们看看Set架构:

1.Set架构.png

  1. Set是继承于Collection的接口,它是一个不允许有重复元素的集合。
  2. AbstractSet是一个抽象类,它继承于AbstractCollection,AbstractCollection实现了Set中的绝大部分函数,为Set的实现类提供了便利。
  3. HastSet和TreeSet是Set的两个实现类。
    • HashSet依赖于HashMap,它实际上是通过HashMap实现的,HashSet中的元素是无序的。
    • TreeSet依赖于TreeMap,它实际上是通过TreeMap实现的,TreeSet中的元素是有序的。