hashSet和List集合存储数据的结构

Posted www1842564021

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hashSet和List集合存储数据的结构相关的知识,希望对你有一定的参考价值。

List集合存储数据的结构

技术图片

 

 

堆栈:先进后出 例如担架 先进去的 后出来

 

---------------------------------------------------------------------------------------------------------

 

技术图片

 

 

 队列:先进的先出 后进的后出

 

 

-------------------------------------------------------------------------------------------------------------------------------------

技术图片

 

 

 数组:增删慢 查询快 因为有下标

-----------------------------------------------------------------------------------------------

技术图片

 

 链表:增删快 查找慢 因为链表不存在下标

ArrayList是数组,LinkedList是链表

ArrayList和linkedList的区别:

ArrayList底层是数组 查找快 增删慢 因为有下标 所以查找快 因为数组长度不可变 需要new一个新数组所以增删慢

LinkedList 底层是链表 查找慢 增删快 因为没有下标 所以查找慢 他们是节点之间的连接 不需要新建一个链表 

JAVA中的数据结构有哪些:堆栈,队列 ,数组,链表

 

ArrayList集合

 

 

ArrayList集合数据存储的结构是数组结构。元素增删慢,查找快,由于日常开发中使用最多的功能为查询数据、遍历数据,所以ArrayList是最常用的集合。

 

 LinkedList集合

技术图片

 

 技术图片

 

 

Vector集合

Vector集合数据存储的结构是数组结构,为JDK中最早提供的集合。Vector中提供了一个独特的取出方式,就是枚举Enumeration,它其实就是早期的迭代器

。此接口Enumeration的功能与 Iterator 接口的功能是类似的。Vector集合已被ArrayList替代。枚举Enumeration已被迭代器Iterator替代。

技术图片

 

 

Set接口

那就是Set接口,它里面的集合,所存储的元素就是不重复的。

Set接口介绍

查阅Set集合的API介绍,通过元素的equals方法,来判断是否为重复元素,

 HashSet集合介绍

查阅HashSet集合的API介绍:此类实现Set接口,由哈希表支持(实际上是一个 HashMap集合)。HashSet集合不能保证的迭代顺序与元素存储顺序相同。

HashSet集合,采用哈希表结构存储数据,保证元素唯一性的方式依赖于:hashCode()与equals()方法。

 HashSet集合存储数据的结构(哈希表)

数组和链表的集合体就叫哈希表

技术图片

 

 hashcode方法

技术图片

 

 技术图片

 

 

 HashSet存储图

技术图片

 

以上是关于hashSet和List集合存储数据的结构的主要内容,如果未能解决你的问题,请参考以下文章

List接口以及数据结构存储特点

HashSet集合存储数据的结构

ListCollections

Java学习(set接口HashSet集合)

数据结构

数据结构