Java重要的数据结构Set,List,Map

时间:2022-03-02 10:37:20

一、java所有的数据结构

java有很多数据结构:
老版本的vector,stack,queue等等非集合框架
新版本的set,list,map等集合框架

注意map没有实现collection接口,但也是属于结合框架内的数据结构

二、主要讲Set,List,Map

Set,List,Map是三个接口;
其实现接口的类常用的有HashSet,TreeSet,ArrayList,LinkedList,Hashmap

三、Set

如同数学上集合的概念,就是里面不包含重复的元素。

Set是最简单的一种集合。集合中的对象不按特定的方式排序,并且没有重复对象。
Set接口主要实现了两个实现类:

HashSet : HashSet类按照哈希算法来存取集合中的对象,存取速度比较快
TreeSet : TreeSet类实现了SortedSet接口,能够对集合中的对象进行排序

3.1 HashSet

由链表组成的数组;

四、List

List的特征是其元素以线性方式存储,集合中可以存放重复对象。
List接口主要实现类包括:
ArrayList() : 代表长度可以改变得数组。可以对元素进行随机的访问,向ArrayList()中插入与与删除元素的速度慢。
LinkedList(): 在实现中采用链表数据结构。插入和删除速度快,访问速度慢。
对于List的随机访问来说,就是只随机来检索位于特定位置的元素。
List 的 get(int index) 方法放回集合中由参数index指定的索引位置的对象,下标从“0” 开始。